[HN Gopher] Don't Make My Mistakes: Common Infrastructure Errors...
       ___________________________________________________________________
        
       Don't Make My Mistakes: Common Infrastructure Errors I've Made
        
       Author : todsacerdoti
       Score  : 10 points
       Date   : 2021-12-03 12:03 UTC (1 days ago)
        
 (HTM) web link (matduggan.com)
 (TXT) w3m dump (matduggan.com)
        
       | karmakaze wrote:
       | I was hoping this would've been a more surprising list, but it
       | was titled 'common'.
       | 
       | > Don't migrate an application from the datacenter to the cloud
       | 
       | Good advice that follows the pattern of don't do a rewrite with a
       | plan to cut-over. Instead make two and gradually transition to
       | the newer one.
       | 
       | > Don't write your own secrets system
       | 
       | Follow-on to 'don't do your own crypto'
       | 
       | > Don't run your own Kubernetes cluster > Are you a Fortune 100
       | company? If no, then don't do it.
       | 
       | > Don't Design for Multiple Cloud Providers
       | 
       | This seems like an extension of YAGNI. If you're not using it,
       | don't build it. If you really will need it, use it as you're
       | building it. A good example is if you're doing multi-datacentre
       | redundancy using standard tech, it _might_ be worthwhile to do
       | multi-cloud. But have an actual threat model in mind that this
       | mitigates, e.g. cloud provider  'A' may become a conflict-of-
       | interest competitor in the foreseeable future.
       | 
       | > Don't let alerts grow unbounded
       | 
       | > Don't write internal cli tools in python > Nobody knows how to
       | correctly install and package Python apps. If you write an
       | internal tool in Python, it either needs to be totally portable
       | or just write it in Go or Rust. Save yourself a lot of heartache
       | as people struggle to install the right thing.
       | 
       | +1 This one rarely gets mentioned.
       | 
       | One that I would add, that I haven't experienced but can
       | certainly foresee is "don't switch major datastores". Switching
       | between MySQL and PostgreSQL might be rough but doable. Switching
       | between MySQL and CockroachDB for a large, heavily-used app could
       | stall developing new features for a long time or make everything
       | take 5x longer. The reason isn't the query syntax, it's the query
       | characteristics. Using a std rdbms gives you the ability to do
       | many relatively quick round-trip queries (though you should avoid
       | N+1's) some can be tolerated. A distributed DB can have high
       | throughput but will have high latency for simple queries.
        
       | slyall wrote:
       | From yesterday
       | 
       | https://news.ycombinator.com/item?id=29434740 - 130 comments
        
       ___________________________________________________________________
       (page generated 2021-12-04 23:01 UTC)