Files
nexus/sreweekly/articles/190/03-mipsytipsy-on-twitter-don-t-alert-on-everything.html
2026-09-12 17:23:01 +08:00

960 lines
145 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
<title>Thread by @mipsytipsy: &quot;OH GOD DO NOT DO THIS THING The sign that someone does not have observability is this: they lean on alarms for EVERYTHING. They cannot de […]&quot;</title>
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="192x192" href="/android-chrome-192x192.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#575553">
<link rel="manifest" href="/manifest.json">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">
<meta name="apple-mobile-web-app-title" content="Thread Reader">
<meta name="application-name" content="Thread Reader">
<meta name="theme-color" content="#575553">
<meta name="description" content="Thread by @mipsytipsy: &quot;OH GOD DO NOT DO THIS THING The sign that someone does not have observability is this: they lean on alarms for EVERYTcannot debug or introspect their systems any other way, so they abuse the FUCK out of monitoring checks and a […]&quot;">
<link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet">
<link rel="stylesheet" href="https://threadreaderapp.com/styles/bootstrap.min.css">
<meta property="og:title" content="Thread by @mipsytipsy: &quot;OH GOD DO NOT DO THIS THING The sign that someone does not have observability is this: they lean on alarms for EVERYTHING. They cannot de […]&quot;" />
<meta property="og:image" content="https://threadreaderapp.com/images/screenshots/thread/1185384414814990336.jpg" />
<meta property="og:image:alt" content="Thread Reader Logo" />
<meta property="og:url" content="https://threadreaderapp.com/thread/1185384414814990336.html" />
<meta property="og:description" content="Thread by @mipsytipsy: &quot;OH GOD DO NOT DO THIS THING The sign that someone does not have observability is this: they lean on alarms for EVERYTcannot debug or introspect their systems any other way, so they abuse the FUCK out of monitoring checks and a […]&quot;" />
<meta property="article:author" content="https://twitter.com/mipsytipsy" />
<meta property="twitter:card" content="summary_large_image" />
<meta property="twitter:creator" content="@mipsytipsy" />
<meta property="twitter:image" content="https://threadreaderapp.com/images/screenshots/thread/1185384414814990336.jpg" />
<meta property="twitter:description" content="Thread by @mipsytipsy: &quot;OH GOD DO NOT DO THIS THING The sign that someone does not have observability is this: they lean on alarms for EVERYTcannot debug or introspect their systems any other way, so they abuse the FUCK out of monitoring checks and a […]&quot;" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<meta property="og:image:type" content="image/jpeg" />
<meta property="og:type" content="article" />
<script type="76a54f87d31c98e8f7d4f4d3-text/javascript">
;!function(e){var n=!1;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var o=window.Cookies,t=window.Cookies=e();t.noConflict=function(){return window.Cookies=o,t}}}(function(){function e(){for(var e=0,n={};e<arguments.length;e++){var o=arguments[e];for(var t in o)n[t]=o[t]}return n}function n(o){function t(n,r,i){var c;if("undefined"!=typeof document){if(arguments.length>1){if("number"==typeof(i=e({path:"/"},t.defaults,i)).expires){var a=new Date;a.setMilliseconds(a.getMilliseconds()+864e5*i.expires),i.expires=a}i.expires=i.expires?i.expires.toUTCString():"";try{c=JSON.stringify(r),/^[\{\[]/.test(c)&&(r=c)}catch(e){}r=o.write?o.write(r,n):encodeURIComponent(String(r)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),n=(n=(n=encodeURIComponent(String(n))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var s="";for(var f in i)i[f]&&(s+="; "+f,!0!==i[f]&&(s+="="+i[f]));return document.cookie=n+"="+r+s}n||(c={});for(var p=document.cookie?document.cookie.split("; "):[],d=/(%[0-9A-Z]{2})+/g,u=0;u<p.length;u++){var l=p[u].split("="),C=l.slice(1).join("=");this.json||'"'!==C.charAt(0)||(C=C.slice(1,-1));try{var g=l[0].replace(d,decodeURIComponent);if(C=o.read?o.read(C,g):o(C,g)||C.replace(d,decodeURIComponent),this.json)try{C=JSON.parse(C)}catch(e){}if(n===g){c=C;break}n||(c[g]=C)}catch(e){}}return c}}return t.set=t,t.get=function(e){return t.call(t,e)},t.getJSON=function(){return t.apply({json:!0},[].slice.call(arguments))},t.defaults={},t.remove=function(n,o){t(n,"",e(o,{expires:-1}))},t.withConverter=n,t}return n(function(){})});
var base_path = "https://threadreaderapp.com";
var showAds = true
var google_ad_client = "ca-pub-3755072543989337";
var google_analytics = "UA-104569155-1";
var isPremium = Cookies.get('is_premium') || false;
var isLogged = Cookies.get('is_logged') || false;
var showAds = !isPremium && window.showAds;
if (showAds) {
var adsbygoogle = window.adsbygoogle || [];
adsbygoogle.push({
google_ad_client: window.google_ad_client,
enable_page_level_ads: true
})
}
var retries = {}
function imgErr(img) {
var src = img.src.split('?')[0]
if (!retries[src]) {
retries[src] = true
img.src = src + '?refresh=' + Date.now()
}
else {
img.onerror = null
img.src = '/images/default_avatar.png'
}
}
</script>
<style>@keyframes rotation{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}body{font-family:"Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Arial,sans-serif;color:rgba(0,0,0,.84);background:#fff;background-attachment:fixed;margin-bottom:50px}h1,h2,h3,h4,h5,h6{padding:0;margin:0;color:rgba(0,0,0,.9);font-weight:700;font-family:Lato,sans-serif}p{font-size:14px}a{color:#1da1f2}a:active,a:focus,a:hover,a:visited{text-decoration:underline;opacity:.8}.table thead th{text-align:left}button{cursor:pointer}.background-gray{background:#f8f9fa!important;border:1px solid #eee;border-width:1px 0}.background-gradient-gray{background:#f8f9fa;background:-moz-linear-gradient(top,#fff 0%,#f8f9fa 100%);background:-webkit-linear-gradient(top,#fff 0%,#f8f9fa 100%);background:linear-gradient(to bottom,#fff 0%,#f8f9fa 100%);filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f8f9fa',GradientType=0 );border-bottom:1px solid #eee}.background-blue{background:#e6ecf0;border-top:1px solid #eee}.background-green{background:#e8f3ec!important;border-top:1px solid #eee}.cookies{position:fixed;bottom:0;right:0;background:#515151;color:#fff;padding:16px;width:250px;border-radius:8px 0 0 0;font-size:.85rem}.cookies .close span{color:#fff;padding:8px;opacity:.8;line-height:normal}.accent,.support-banner a{color:#fe3873}.navbar{height:58px;color:#fff;background:-webkit-linear-gradient(left,#000,#515151);margin-bottom:20px}.section-one{padding:2rem 0 1rem}.below-nav,.section-one{margin-top:-20px}#prefetch #text,.below-nav.alert{text-align:center}.show-premium #prefetch{position:absolute;top:50%;left:50%;width:242px;height:16px;margin-left:calc(242px/-2)}#prefetch #text{font-size:.7em;font-weight:700;padding-top:16px;color:#666}.anchorable{position:relative}.modal .anchorable{font-size:1.2rem;margin-bottom:10px}.anchor{position:absolute;top:-82px}body>.container{padding:0 15px}.container~.container{padding-top:0}.navbar-brand{background-image:url(/images/header-logo-mobile.png);background-size:26px 18px;background-repeat:no-repeat;background-position:top left;width:152px;height:18px}.navbar-brand,.navbar-brand:hover{color:transparent}.support-banner{display:flex;justify-content:center;align-items:center;margin-top:-20px;border-bottom:1px solid #ccc;text-align:center;margin-bottom:20px;background:#e6ecf0;height:50px;color:#000}.support-banner img{height:35px;float:left}.support-banner p{font-size:1rem;font-family:'Lato',sans-serif}.top-right-action{z-index:1032;position:absolute;top:10px;right:10px}.button{border-radius:5px;color:#fff;font-size:1.05rem;padding:6px 12px;font-weight:600;display:inline-block;border:0;cursor:pointer}.button,.nav-pills .nav-link.active{background:#63615f}.button:active,.button:focus,.button:hover{color:#fff;text-decoration:none;opacity:.8}.button.button-main-action,.button.button-share{background:#fe3873}.button.button-cancel{background:#ababab}.button-danger{color:#fff;background:red;font-weight:700}.button.button-bar-action{font-size:.9rem;padding:5px 8px 5px 32px;background-position:5px center;background-repeat:no-repeat;background-size:20px;background-color:#fe3873;margin-bottom:4px}.button.button-bar-action.button-subscribe{background-image:url(/images/icon-subscribe-128.png)}.button.button-bar-action.button-bar-share{padding:5px 8px}.button.button-bar-action.button-archive{background-image:url(/images/icon-archive.png)}.button.button-bar-action.button-read-later{background-image:url(/images/icon-read-later-128.png)}.btn-share-thread span.txt,.content-header.content-tweet br,.thread-card br{display:none}.box-bar-action form,.btn-share-thread.with-txt span.txt,.share-inline a{display:inline-block}.btn-share-thread .btn-outline-primary{border-color:#fff;color:#38a1f3;padding:.25rem 1rem}.btn-share-thread .btn-outline-primary:hover{background:#fff;color:#333}.share-modal{text-align:center}.share-inline a{margin-bottom:1.5rem;font-size:.85rem}#tweet_1.content-tweet,.content-header.content-tweet{font-family:'Lato',sans-serif;font-size:1.5rem;line-height:1.5;color:#000}.ribbon{position:absolute;top:0;right:-5px;padding:10px;z-index:1000}.ribbon-content{position:relative;width:100%;height:20px}.ribbon.base{background:#3498db;color:#fff;border-right:5px solid #8bc4ea}.ribbon:after,.ribbon:before{content:'';position:absolute;left:-9px;border-left:10px solid transparent}.ribbon:before{top:0}.ribbon:after{bottom:0}.ribbon.base:before{border-top:27px solid #3498db}.ribbon.base:after{border-bottom:27px solid #3498db}.ribbon span{display:block;font-size:12px;font-weight:600}.ribbon span a{color:#fff;text-decoration:underline}.thread-info{color:#333;font-size:.8rem;letter-spacing:-.6px;white-space:nowrap}.thread-info .count{padding-right:5px}.thread-info a.time{color:#333}#viewcount{color:#999;font-size:.7rem}.viewcount{margin:0;padding:0}.box-user{margin:.5rem 0;border-radius:5px}.card .box-user{margin:0}.box-user .avatar{padding-right:10px}.box-user .avatar img{border-radius:60px;width:60px;height:60px}.t-user .box-user .avatar img,.user-page .box-user .avatar img{border-radius:50px;width:50px;height:50px}.box-user .username{display:block}.box-user .screenName,.box-user .username,.entity-url-preview a small,.entity-url-preview a strong{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.box-user .username a{font-size:1rem;font-weight:700;color:#2e2c2d}.box-user .screenName a{font-size:.8em;color:#666;position:relative}.box-user .screenName,form.subscribe{display:inline}.userbio{font-size:.75rem;color:#777;display:block;line-height:1rem;margin:3px 0 5px}.box-bar-action{text-align:right;margin-bottom:1.5rem}.user-info .box-subscribers{border-top:1px solid #ccc;margin:10px -20px 0;padding:20px 20px 0}.box-subscribers .subscriber-pp{display:inline-block;width:25px}.box-subscribers .subscriber-pp img{height:30px;border-radius:24px;border:solid 1px #e5e5e7;padding-right:0}.box-subscribers .more{display:inline-block;font-size:14px;color:#333}.box-archive,.box-subscribe{text-align:center;padding:1rem 0 2rem}.box-archive strong,.box-subscribe strong{color:#fe3873;margin-bottom:16px;display:block}.box-archive strong{margin-bottom:0}.box-archive .details{margin-bottom:16px;display:block}.button.button-follow{padding:3px 6px 3px 25px}.button.button-embed,.button.button-follow,.button.button-twitter{background:#fff;color:#2e2c2d;background-repeat:no-repeat;font-size:.83rem;background-position:5px 5px;margin-right:6px;margin-top:6px}.button.button-twitter{padding:3px 6px 3px 25px}.box-user .button-author-related{color:#38a1f3;border-color:#38a1f3;padding:.09rem .5rem;font-size:.75rem;line-height:1.5;border-radius:.2rem}.box-user .button-author-related:hover{color:#fff;background-color:#38a1f3;border-color:#38a1f3}.card-user form.subscribe{float:none;display:block;text-align:center}.read-on-twitter{white-space:nowrap}.follow-on-twitter{font-size:.75rem}.btn-xsm,.btn-xxsm{line-height:1.5;border-radius:.2rem}.btn-xsm{padding:.25rem .5rem;font-size:.75rem}.btn-xxsm{padding:2px 8px;font-size:10px}.retweet{width:1.25em;margin-right:0;vertical-align:middle;fill:#999}.retweet:hover{fill:#000}.twitter-actions{white-space:nowrap}.twitter-actions a{text-decoration:none}.tw-permalink{text-align:right;font-size:14px;width:12px;color:#eee}.tw-permalink a{color:#ddd}a.tweet-click{color:#000;text-decoration:none}.t-section.promo ul,.user-page .other-info{text-align:left}.button.button-embed{padding:3px 6px;float:right}.content-tweet{font-family:Georgia,Cambria,"Times New Roman",Times,serif;font-style:normal;font-size:18px;line-height:1.58;letter-spacing:-.003em;overflow:hidden;word-wrap:break-word;margin-bottom:1.25rem;color:#000;cursor:pointer}.t-tweet:hover{background:#f5f8fa}.col-force-refresh{opacity:.8;font-size:.7rem;text-align:center}.entity-url-preview{background:#fff;border:1px #e1e8ed solid;border-radius:8px;overflow:hidden;text-align:left!important}.entity-url-preview .paragraph{margin:1rem;font-size:.8rem;font-family:"Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Arial,sans-serif}.entity-url-preview a small,.entity-url-preview a strong{color:#2e2c2d;display:block;font-size:.85rem}.entity-url-preview a{text-decoration:none;color:#63615f}.entity-url-preview a small{color:#1da1f2;margin-top:8px;padding-left:20px;background-repeat:no-repeat;background-image:url(/images/icon-link.png);background-position:0 2px;font-size:.75rem}.entity-url-preview .img-cover{display:block;height:100%;background-repeat:no-repeat;background-size:cover;background-position:center;background-color:#eee}.entity-url-preview .img-cover img{visibility:hidden}.entity-reveal-action{background:#bbb;font-size:.5rem;font-family:sans-serif;font-weight:400;padding:3px 6px;position:relative;top:-3px;margin-right:5px}.alert-error{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-custom{background:#e6ecf0!important;border:1px solid #eee}.alert-custom a{color:#fe3873;text-decoration:underline}.box-message{border-width:1px 0;border-style:solid;padding:12px 16px;margin:18px 0;border-color:#65a0c6;background:#b3d9f1}.box-error,.box-support{border-color:#e8d35c;background:#fff4af}.box-info{border-color:#65a0c6;background:#b3d9f1}.box-success{border-color:#7abd6f;background:#c0ebb9}.button.button-support{background:#fff;color:#2e2c2d;padding:3px 6px;font-size:.95rem}.thread-card{transition:all 300ms;background:#fff;padding:16px;margin-bottom:20px;border:1px solid rgba(0,0,0,.125);border-radius:.25rem;position:relative;cursor:pointer;box-shadow:0 10px 40px 0 rgba(62,57,107,.07),0 2px 9px 0 rgba(62,57,107,.06)}.thread-card:hover{transition:all 300ms;transform:translateY(-5px) translateZ(0);box-shadow:0 16px 32px 0 rgba(62,57,107,.28),0 0 0 transparent}.thread-card .box-user{background:0 0;padding:0 0 10px;border-bottom:solid 1px #a4a4a4;margin-bottom:14px;margin-top:0;border-radius:0}.thread-card .box-user .avatar img{border:solid 2px #fff;border-radius:42px;width:42px;height:42px}.thread-card .box-user .username{display:block;font-size:1.1rem;font-weight:700;color:#2e2c2d}.thread-card .box-user .screenName{font-size:.9em;color:#575553;display:block;position:relative;top:-4px}.thread-card .time{font-size:.7rem;position:absolute;width:100px;text-align:center;top:66px;left:-50px;background:#fff;margin-left:50%}.thread-card .content-tweet{font-size:1rem;margin-bottom:1.2rem}.thread-card .entity-embed,.thread-card .entity-url-preview,.thread-card .entity-video{display:none}.thread-card .card-tweets a,.thread-card .card-tweets a:hover,a.thread-card-wrap,a.thread-card-wrap:hover{color:#575553;text-decoration:none;opacity:1}.card-tweets{height:250px;max-height:250px;overflow:hidden;margin-bottom:16px}.button-tag{display:inline-block;color:#2e2c2d;border:1px #cfcfcf solid;border-radius:5px;background:#fff;padding:3px 6px;margin:0 6px 12px 0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%}a.button-tag:hover{color:#2e2c2d;text-decoration:none}.nop,.nop a{color:#a4a4a4}.nop-full{font-size:1rem}input{border:1px #a4a4a4 solid;color:#767472}.vertical-align{display:flex;align-items:center}.tr-fadeout{visibility:hidden;opacity:0;transition:visibility 0s 1s,opacity 1s linear}.t-rel{margin-bottom:3rem}html{position:relative;min-height:100%}.footer,.sharingfooter{bottom:0;display:flex;align-items:center}.footer{width:100%;display:block;font-size:.9rem;background:#000;position:absolute;padding:10px 0}.footer a{color:#fff}.footer a.btn-circle{width:30px;height:30px;text-align:center;padding:6px 0;font-size:12px;line-height:1.428571429;border-radius:15px;background:#999;color:#fff}.footer a.btn-circle.twitter{background:#38a1f3;color:#fff}.footer>.container{padding-right:15px;padding-left:15px}.sharingfooter{position:fixed;left:0;right:0;background:#fff;z-index:98;box-shadow:0 0 1px rgba(0,0,0,.4);height:50px;vertical-align:middle;font-size:13px;justify-content:center;padding:0 20px}.sharingfooter .btn-fb-share,.sharingfooter .btn-twitter{font-weight:700;padding:.25rem 1.6rem}.sharingfooter .btn-fb-share{margin-left:10px}.sharingfooter .follow-us{display:none}.entity-embed,.entity-image,.entity-url-preview,.entity-video,.entity-video-gif{font-family:"Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Arial,sans-serif;color:#575553;font-size:.8rem;display:block;margin:10px 0 0}.entity-embed .youtube-player,.entity-image img,.entity-video video,.entity-video-gif video{max-width:100%;width:100%;background:#fff;border-radius:15px;border:solid 1px #e1e8ed}.entity-embed .twitter-player blockquote{max-width:100%;background:#fff;border-radius:15px;border:solid 1px #e1e8ed}.entity-image a:active,.entity-image a:focus,.entity-image a:hover,.entity-image a:visited{opacity:1}.entity-embed .youtube-player{max-height:600px}.entity-embed .twitter-player blockquote{text-align:left;padding:32px;min-width:500px;width:500px;margin:0 auto}.entity-embed .twitter-player blockquote:before{content:"External Tweet loading...\AIf nothing shows, it may have been deleted";display:block;white-space:pre}.entity-mention{opacity:.75;color:#515151}.homepage-header{text-align:center;font-weight:700;font-size:1.6rem;line-height:1.4}.list-content-header{font-family:'Lato',sans-serif;font-size:1.125rem;line-height:1.5;color:rgba(0,0,0,.9);font-weight:700;margin:1em 0}.homepage-header{padding:1rem 0}.homepage-search{padding-bottom:.8rem}.account-reassurance,.card{box-shadow:0 10px 40px 0 rgba(62,57,107,.07),0 2px 9px 0 rgba(62,57,107,.06)}.card-search,.card-user{border:0;background:#f4f4f4;border-radius:0;margin-bottom:20px;border-top:solid 5px #63615f}.card-user{padding:16px 16px 0}.homepage-title{font-family:Lato,sans-serif;font-size:1.4rem;text-align:center;line-height:2.1rem;padding-bottom:1rem}.homepage-title strong{color:#fe3873}.lead-search .button-tag{display:inline;display:inline-flex;font-size:.7rem;text-decoration:none;color:#333;cursor:pointer}.hashtags{margin-bottom:4rem}.btn-primary,.btn-primary:active,.btn-primary:focus,.btn-primary:hover{border-color:#fe3873;background-color:#fe3873}.btn-primary:hover{opacity:.8}.hide-mobile,body.isp .show-freemium{display:none}.box-ads{width:100%;position:relative;background-color:transparent!important;border:0!important;margin-bottom:20px}.ad-on-top{margin:10px auto}.page-help h3,.page-help h4,.page-help h5{padding:1rem 0 .8rem}.t-section{padding:1rem 0}.t-section.promo{text-align:center}.jumbotron img.icon,.t-section.promo img.icon{width:40%}.t-section .nav{margin:-2.5rem 0 3rem}.t-section h2.header{font-size:1.4rem}.archive-table{font-size:.875rem}.nav-link{font-family:Lato,sans-serif;padding:.5rem 0;font-size:14px;margin-right:2em;color:#999}.nav-item.active,.nav-link.active,.nav-link:active,.nav-link:hover,.sidenav .nav-item.active,.sidenav .nav-link.active{color:#fff}.login-box{text-align:center}.filter-thread{font-size:1rem;width:auto;float:right}.load-more-container{margin-bottom:3rem}.sidenav{height:100%;width:0;position:fixed;z-index:999;top:0;left:0;background-color:#111;overflow-x:hidden;padding-top:60px;transition:.5s}.sidenav a{padding:8px 8px 8px 32px;text-decoration:none;font-size:18px;white-space:nowrap;color:#818181;display:block;transition:.3s}.sidenav a:hover{color:#f1f1f1}.sidenav .closebtn{position:absolute;top:0;right:5px;font-size:36px;margin-left:50px}.badge-custom{background-color:#fe3873;vertical-align:top;color:#fff}.enjoy-boxes{border:0}@media screen and (max-height:450px){.sidenav{padding-top:15px}.sidenav a{font-size:18px}}body.isp .hide-premium{display:none!important}body.isp .show-premium{display:block!important}@media (min-width:576px){.navbar-brand{background-size:152px 18px;background-image:url(/images/header-logo.png)}.homepage-header{padding:1.5rem 0 4rem}.homepage-header strong{font-size:155%}.lead-second{display:block;padding:1rem 0}.homepage-header{font-size:1.8rem}.hide-mobile{display:initial}.show-mobile{display:none}.box-ads{width:100%}.box-user .avatar img,.t-user .box-user .avatar img{border-radius:70px;width:70px;height:70px}.card-tweets{height:250px;max-height:200px;overflow:hidden;margin-bottom:16px}.twitter-logo{width:45px}.viewcount{text-align:right}p{font-size:1rem}.content-tweet{font-size:1.1875rem}.list-content-header{font-size:1.4rem}}@media (min-width:768px){.card-tweets{height:250px;max-height:250px;overflow:hidden;margin-bottom:16px}.homepage-title{font-size:1.6rem;line-height:2rem}.container{max-width:960px}.container.narrow{max-width:740px;padding-left:20px;padding-right:20px}.navbar{margin-bottom:40px}.below-nav,.section-one{margin-top:-40px}.below-nav{margin-bottom:30px}.support-banner{margin-top:-40px;margin-bottom:40px}.sharingfooter{justify-content:flex-end}.sharingfooter .follow-us{display:block;position:absolute;left:10px}#tweet_1.content-tweet{font-size:1.7rem}.t-section{padding:3rem 0}.login-box,.t-section,.t-section.promo{text-align:left}.jumbotron img.icon,.t-section.promo img.icon{width:80%}.t-section h2.header{font-size:2rem}.user-page .box-user .avatar img{border-radius:90px;width:90px;height:90px}.user-page .other-info{text-align:center}.enjoy-boxes{border-left:1px solid #ccc}}@media (min-width:992px){.card-tweets{height:250px;max-height:250px;overflow:hidden;margin-bottom:16px}.entity-embed .youtube-player,.entity-image img,.entity-url-preview,.entity-video video,.entity-video-gif video,.thread-card .entity-embed .youtube-player,.thread-card .entity-image img,.thread-card .entity-video video,.thread-card .entity-video-gif video{max-width:100%;width:100%}}.emoji{width:16px;height:16px;position:relative;top:-1px}.unroll-item{text-overflow:ellipsis;overflow:hidden}.delete-thread,.hide-thread{position:absolute;right:5px;top:6px;font-weight:700;font-variant:small-caps;background:red;display:inline-block;padding:0 6px 3px;line-height:21px;border-radius:8px;border-width:3px;cursor:pointer;z-index:5}.delete-thread{color:#fff}.hide-thread{color:#8b0000;background:#d3d3d3}.delete-thread:hover,.hide-thread:hover{color:red;background:#fff}.account-reassurance{margin-top:1rem;border:0;background:#f4f4f4;border-radius:0;padding:16px;margin-bottom:20px;border-top:solid 5px #63615f}.account-reassurance h2{font-weight:700;font-size:1.5rem;padding-bottom:1rem}.account-reassurance .content-tweet{font-family:"Lucida Grande","Lucida Sans Unicode","Lucida Sans",Geneva,Arial,sans-serif}.see-more{display:none}.home-page .see-more,.toc a{display:block}.toc{margin-bottom:32px}.toc a{color:#333}.toc a.toc-h2{padding-left:16px;font-size:1.25rem;padding-top:8px;text-transform:uppercase}.toc a.toc-h3{padding-left:32px;font-size:1rem;padding-top:4px}.reassurance h3{margin:1rem 0;font-weight:700}.help-page h2{margin-top:2rem;text-transform:uppercase;font-size:1.5rem;padding-top:2rem;border-top:1px solid #ccc}.help-page h3,.reassurance h3{font-size:1.25rem}.about-press a,.about-team a,.option-or-other::after{display:block;text-align:center;color:#575553}.about-press a:hover,.about-team a:hover{text-decoration:none}.about-press img{width:80%;max-width:80%}.about-press strong{display:block;margin:24px;font-size:1.3rem}.about-team{margin-top:32px}.about-team img{display:inline-block;margin-bottom:16px;border-radius:128px;max-width:100%;width:128px}.about-quote{font-size:1.2rem;font-style:italic;background:#eee;padding:16px}.about-quote small{display:block;text-align:right}.ul-max-height{max-height:491px;overflow-y:auto}.option-or-other{position:relative;width:50%}.option-or-other::after{content:"or";position:absolute;font-size:12px;color:#a5a5a5;background:#fff;top:-10px;width:28px;left:50%;margin-left:-14px}.option-or-other.buffer{display:block;margin:2rem auto}.secondary-button-container{overflow:hidden!important;border-radius:5px!important;display:inline-block!important;width:100%!important;text-align:center!important}.patreon-button,.paypal-button{color:#fff;display:inline-block;min-height:35px;background:#009cde;font-size:16px;font-style:italic;border-radius:4px;line-height:35px;text-align:center;width:250px}.patreon-button:active,.patreon-button:hover,.patreon-button:visited,.paypal-button:active,.paypal-button:hover,.paypal-button:visited{color:#fff;text-decoration:none}.paypal-button .paypal-logo{height:17px;max-height:21px;min-height:14px;margin-top:-4px}.btn-twitter,.with-color .share-twitter,.with-color .share-twitter:hover{color:#fff;background-color:#38a1f3;border-color:#38a1f3}.btn-fb-share,.with-color .share-fb,.with-color .share-fb:hover{color:#fff;background-color:#3b5998;border-color:#3b5998}.with-color .share-email,.with-color .share-email:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.with-color .share-embed,.with-color .share-embed:hover{color:#fff;background-color:#007bff;border-color:#007bff}.with-color .share-email:hover,.with-color .share-embed:hover,.with-color .share-fb:hover,.with-color .share-twitter:hover{opacity:.8}.btn-paypal{background:#3b7bbf;border:#3b7bbf}.btn-patreon{background:#f96854;border:#f96854}.stripe-button-el{background:0 0!important;box-shadow:none!important;width:250px!important;display:block!important;margin:0 auto}.profile .stripe-button-el{width:auto!important;margin-right:5px}.stripe-button-el span{min-height:37px!important;background:#fe3873!important;border:0!important;font-size:16px!important;font-style:italic!important;font-weight:700!important;box-shadow:none!important;text-shadow:none!important;border-radius:4px!important;line-height:35px!important}.profile .stripe-button-el span{font-style:normal!important}.stripe-button-el span:hover{opacity:.8!important}.load-more-action{display:block;text-align:center;opacity:.5}.b-lazy,.entity-image img{background:url(/images/loading.gif) no-repeat center center #fff}.talking-outside{display:none}.pp-selected .talking-outside{display:block}.payment-overlay,.payment-spin-box{position:fixed;width:100%;height:100%;top:0;left:0;right:0;bottom:0}.payment-overlay{background-color:rgba(255,255,255,.95);cursor:pointer;z-index:2}.payment-spin-box{z-index:3;display:flex;align-items:center;justify-content:center}.payment-spin{max-width:50%}.spinner.loading{padding:90px;position:relative;text-align:center}.spinner.loading:before{content:"";height:80px;width:80px;margin:-40px auto auto -40px;position:absolute;top:50%;left:50%;border-width:4px;border-style:solid;border-color:#2180c0 #ccc #ccc;border-radius:100%;animation:rotation .7s infinite linear}.switch{position:relative;display:inline-block;width:48px;height:28px}.switch input{opacity:0;width:0;height:0}.slider,.slider:before{position:absolute;-webkit-transition:.4s;transition:.4s}.slider{cursor:pointer;top:0;right:0;left:0;bottom:0;background-color:#ccc}.slider:before{content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff}input:checked+.slider{background-color:#2196f3}input:focus+.slider{box-shadow:0 0 1px #2196f3}input:checked+.slider:before{-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}.slider.round{border-radius:20px}.slider.round:before{border-radius:50%}</style>
<style>
.footer {
bottom: 50px;
}
.entry-support {
padding-bottom: 3rem;
}
</style>
</head>
<body>
<nav class="navbar justify-content-between">
<a class="navbar-brand" href="/">
Thread Reader
</a>
<div>
<a class="btn btn-secondary" href="https://threadreaderapp.com/account"><i class="fas fa-user"></i></a>
<a class="btn btn-primary action-share gaClickEvent" data-category="new-header-share-button" data-action="new-share-on-header" data-label="new-header" href="#"><i class="fas fa-share-alt"></i></a>
</div>
</nav><div class="ad-on-top hide-mobile">
<div class="container">
<div class="row">
<div class="col-12" style="margin-top:-20px; margin-bottom:20px; text-align:center;">
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-3755072543989337"
data-ad-slot="5339396365"
data-ad-format="auto"
data-full-width-responsive="true"></ins>
</div>
</div>
</div>
</div>
<article class="container narrow">
<div class="row t-user">
<div class="col-12">
<p class="viewcount p-0 m-0"><small><span id="viewcount" style="display:none">12,399 views</span> </small></p>
<script type="76a54f87d31c98e8f7d4f4d3-text/javascript" async src="https://platform.twitter.com/widgets.js"></script>
<div class="box-user">
<div class="d-flex justify-content-between align-items-center">
<div class="avatar align-self-center">
<a href="https://twitter.com/mipsytipsy" target="_blank">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/90488576.jpg" alt="Profile picture" onerror="imgErr(this)">
</a>
</div>
<div style="flex-grow:1; min-width:0;">
<div class="d-flex justify-content-between align-items-center">
<div style="flex-grow:1; min-width:0;">
<span class="username mr-2">
<a href="https://twitter.com/mipsytipsy" target="_blank">Charity Majors</a>
</span>
</div>
</div>
<div class="d-flex align-self-center justify-content-between mt-1">
<span class="screenName mr-2"><a href="https://twitter.com/mipsytipsy">@mipsytipsy</a></span>
<div class="float-right">
<a href="https://twitter.com/intent/tweet?in_reply_to=1185384414814990336"><svg viewBox="0 0 24 24" class="retweet">
<g>
<path
d="M14.046 2.242l-4.148-.01h-.002c-4.374 0-7.8 3.427-7.8 7.802 0 4.098 3.186 7.206 7.465 7.37v3.828c0 .108.044.286.12.403.142.225.384.347.632.347.138 0 .277-.038.402-.118.264-.168 6.473-4.14 8.088-5.506 1.902-1.61 3.04-3.97 3.043-6.312v-.017c-.006-4.367-3.43-7.787-7.8-7.788zm3.787 12.972c-1.134.96-4.862 3.405-6.772 4.643V16.67c0-.414-.335-.75-.75-.75h-.396c-3.66 0-6.318-2.476-6.318-5.886 0-3.534 2.768-6.302 6.3-6.302l4.147.01h.002c3.532 0 6.3 2.766 6.302 6.296-.003 1.91-.942 3.844-2.514 5.176z">
</path>
</g>
</svg>
</a>
<a href="https://twitter.com/intent/retweet?tweet_id=1185384414814990336"><svg viewBox="0 0 24 24" class="retweet">
<g>
<path
d="M23.77 15.67c-.292-.293-.767-.293-1.06 0l-2.22 2.22V7.65c0-2.068-1.683-3.75-3.75-3.75h-5.85c-.414 0-.75.336-.75.75s.336.75.75.75h5.85c1.24 0 2.25 1.01 2.25 2.25v10.24l-2.22-2.22c-.293-.293-.768-.293-1.06 0s-.294.768 0 1.06l3.5 3.5c.145.147.337.22.53.22s.383-.072.53-.22l3.5-3.5c.294-.292.294-.767 0-1.06zm-10.66 3.28H7.26c-1.24 0-2.25-1.01-2.25-2.25V6.46l2.22 2.22c.148.147.34.22.532.22s.384-.073.53-.22c.293-.293.293-.768 0-1.06l-3.5-3.5c-.293-.294-.768-.294-1.06 0l-3.5 3.5c-.294.292-.294.767 0 1.06s.767.293 1.06 0l2.22-2.22V16.7c0 2.068 1.683 3.75 3.75 3.75h5.85c.414 0 .75-.336.75-.75s-.337-.75-.75-.75z">
</path>
</g>
</svg>
</a>
<a href="https://twitter.com/intent/like?tweet_id=1185384414814990336"><svg viewBox="0 0 24 24" class="retweet">
<g>
<path
d="M12 21.638h-.014C9.403 21.59 1.95 14.856 1.95 8.478c0-3.064 2.525-5.754 5.403-5.754 2.29 0 3.83 1.58 4.646 2.73.814-1.148 2.354-2.73 4.645-2.73 2.88 0 5.404 2.69 5.404 5.755 0 6.376-7.454 13.11-10.037 13.157H12zM7.354 4.225c-2.08 0-3.903 1.988-3.903 4.255 0 5.74 7.034 11.596 8.55 11.658 1.518-.062 8.55-5.917 8.55-11.658 0-2.267-1.823-4.255-3.903-4.255-2.528 0-3.94 2.936-3.952 2.965-.23.562-1.156.562-1.387 0-.014-.03-1.425-2.965-3.954-2.965z">
</path>
</g>
</svg>
</a>
<a href="https://twitter.com" target="_blank"><img src="/images/Twitter_Logo_Blue.png" alt="Profile picture" width="20px" /></a>
</div>
</div>
</div>
</div>
<div class="mt-2">
<span class=" thread-info">
<a href="https://twitter.com/mipsytipsy/status/1185384414814990336" class="time" data-time="1571452642" style="float:none;"></a>,
<span class="count">
10 tweets,
2 min read
</span>
</span>
</div>
</div>
</div>
</div>
<div class="row t-actions">
<div class="col-12">
<div class="box-bar-action">
<form method="post" action="https://threadreaderapp.com/account/readLater/1185384414814990336"
class="gaClickEvent" data-category="threadbuttons" data-action="read-later" data-label="top">
<button type="submit" class="btn btn-outline-dark btn-xsm button-read-later">
<i class="far fa-bookmark"></i> Bookmark
</button>
</form>
<form method="post" action="https://threadreaderapp.com/account/archive/1185384414814990336"
class="gaClickEvent" data-category="threadbuttons" data-action="archive" data-label="top">
<button type="submit" class="btn btn-outline-dark btn-xsm">
<i class="far fa-file-pdf"></i> Save as PDF
</button>
</form>
<form method="post" action="https://threadreaderapp.com/account/subscribe/mipsytipsy"
class="text-center gaClickEvent" data-category="threadbuttons" data-action="subscribe" data-label="below-thread">
<button type="submit" class="btn btn-outline-dark btn-xsm">
<i class="fas fa-plus"></i> My Authors
</button>
</form>
</div>
</div>
</div>
<div class="t-main">
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_1" data-screenname="mipsytipsy" data-tweet="1185384414814990336" class="content-tweet allow-preview" dir="auto">
OH GOD DO NOT DO THIS THING <br />
<br />
The #1 sign that someone does not have observability is this: they lean on alarms for ⭐️EVERYTHING.⭐️<br />
<br />
They cannot debug or introspect their systems any other way, so they abuse the FUCK out of monitoring checks and alarms. <span class="entity-embed"><span class="twitter-player"><blockquote class="twitter-tweet" data-conversation="none" data-align="center" data-dnt="true"><a href="https://twitter.com/paulwberg/status/1183822059102588928">https://twitter.com/paulwberg/status/1183822059102588928</a></blockquote></span></span>
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_2" data-screenname="mipsytipsy" data-tweet="1185384842717847552" class="content-tweet allow-preview" dir="auto">
I *just* wrote a post about this: <a class="entity-url" data-preview="true" href="https://charity.wtf/2019/09/20/love-and-alerting-in-the-time-of-cholera-and-observability/">charity.wtf/2019/09/20/lov…</a><br />
<br />
Sorry if that was a little harsh. Flashbacks. Shudder.
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_3" data-screenname="mipsytipsy" data-tweet="1185385389940330496" class="content-tweet allow-preview" dir="auto">
Listen, I am not shaming anyone for doing the best they can do with the tools they have had.<br />
<br />
It is NOT EASY trying to cobble together an understanding of a complex system using checks, alarms, dashboards, and your intuition. Sweetheart, I *know*. You do your best <span class="entity-video-gif"><video autoplay loop controls poster="https://pbs.twimg.com/tweet_video_thumb/EHNVugTVUAEetQf.jpg"><source src="https://video.twimg.com/tweet_video/EHNVugTVUAEetQf.mp4" type="video/mp4"><img alt="" src="https://pbs.twimg.com/tweet_video_thumb/EHNVugTVUAEetQf.jpg"></video></span>
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_4" data-screenname="mipsytipsy" data-tweet="1185385831382450176" class="content-tweet allow-preview" dir="auto">
But this is exactly why I feel so strongly about it. You will shred even the strongest of teams this way; it is just a matter of time. It is genuinely not compatible with human flourishing.
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_5" data-screenname="mipsytipsy" data-tweet="1185386499254079489" class="content-tweet allow-preview" dir="auto">
It worked okay for a while, in the days of the monolith and the LAMP stack. Not great, but "okay".<br />
<br />
But your systems are getting exponentially more complex. Every dimension is high cardinality with a growing set -- services, apis, instances, containers, endpoints, storage...
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_6" data-screenname="mipsytipsy" data-tweet="1185387138558251008" class="content-tweet allow-preview" dir="auto">
Which means that the number of things that can go wrong, or combinations of things that can go wrong, or spaces between combination of things...<br />
<br />
It's all growing a lot faster than *that* exponential curve. You cannot subject a team to this barrage of alerts and thresholds.
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_7" data-screenname="mipsytipsy" data-tweet="1185387707884699648" class="content-tweet allow-preview" dir="auto">
The ONLY way I know of to bend the cost curve down is with SLOs, observability tooling that lets you explore open endedly in real time, and limiting alerts to mirror customer impacting pain. Mostly e2e.
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_8" data-screenname="mipsytipsy" data-tweet="1185387942174265344" class="content-tweet allow-preview" dir="auto">
Page less. Not more. Page way, way, way less. WAY less.
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_9" data-screenname="mipsytipsy" data-tweet="1185390035056463872" class="content-tweet allow-preview" dir="auto">
A lightweight modern version of this worth mentioning though -- devs using honeycomb often set triggers on queries for the code they are writing, so they get a slack message if anything odd happens.<br />
<br />
Or if like they are on call and trying to repro something for a particular user.
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
<div class="row t-tweet">
<div class="col-12">
<div id="tweet_10" data-screenname="mipsytipsy" data-tweet="1185390375613038592" class="content-tweet allow-preview" dir="auto">
It is useful af, I am not denying that. It just doesn't *work* when you're doing this at scale. And it fails in the most costly and painful way conceivable: in human lives. 😕
<sup class="tw-permalink"><i class="fas fa-link"></i></sup>
</div>
</div>
</div>
</div>
</article>
<div class="container">
<div class="row">
<div class="col-12 pb-4 col-force-refresh">
<span class="force-text">
Missing some Tweet in this thread? You can try to <a href="#" class="action-force">force a refresh</a>.
</span>
<form id="form-force" method="post" action="https://threadreaderapp.com/refresh/1185384414814990336.html"></form>
<div class="progress force-progress" style="display: none">
<div class="progress-bar progress-bar-striped progress-bar-animated"
aria-valuenow="100"
aria-valuemin="0"
aria-valuemax="100"
style="width: 100%"
></div>
</div>
</div>
</div>
</div>
<div class="container mb-4">
<div class="row">
<div class="col-12 text-center">
<div class="btn-group btn-share-thread with-txt with-color" role="group" aria-label="Share">
<a class="btn btn-outline-primary share-twitter gaClickEvent" target="_blank" href="https://twitter.com/intent/tweet?text=Thread%20by%20%40mipsytipsy%3A%20%22OH%20GOD%20DO%20NOT%20DO%20THIS%20THING%20The%20sign%20that%20someone%20does%20not%20have%20observability%20is%20this%3A%20they%20lean%20on%20alarms%20for%20EVERYTcannot%20debug%20or%20introspect%20their%20systems%20any%20other%20way%2C%20so%20they%20abuse%20the%20FUCK%20out%20of%20monitoring%20checks%20and%20a%20%5B%E2%80%A6%5D%22&amp;url=https%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-on-twitter" data-label="bottom"><i class="fab fa-twitter"></i> <span class="txt">Tweet</span></a>
<a class="btn btn-outline-primary share-fb gaClickEvent" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-on-facebook" data-label="bottom"><i class="fab fa-facebook-f"></i> <span class="txt">Share</span></a>
<a class="btn btn-outline-primary share-email gaClickEvent" href="mailto:?subject=Thread%20by%20%40mipsytipsy%3A%20%22OH%20GOD%20DO%20NOT%20DO%20THIS%20THING%20The%20sign%20that%20someone%20does%20not%20have%20observability%20is%20this%3A%20they%20lean%20on%20alarms%20for%20EVERYTHING.%20They%20cannot%20de%20%5B%E2%80%A6%5D%22&body=Thread%20by%20%40mipsytipsy%3A%20%22OH%20GOD%20DO%20NOT%20DO%20THIS%20THING%20The%20sign%20that%20someone%20does%20not%20have%20observability%20is%20this%3A%20they%20lean%20on%20alarms%20for%20EVERYTcannot%20debug%20or%20introspect%20their%20systems%20any%20other%20way%2C%20so%20they%20abuse%20the%20FUCK%20out%20of%20monitoring%20checks%20and%20a%20%5B%E2%80%A6%5D%22%0A%0Ahttps%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-by-email" data-label="bottom"><i class="far fa-envelope"></i> <span class="txt">Email</span></a>
<a data-toggle="modal" data-target="#embedModal" class="hide-mobile btn btn-outline-primary share-embed gaClickEvent" data-category="threadbuttons" data-action="embed" href="">
<i class="fas fa-code"></i> <span class="txt">Embed</span>
</a>
</div>
</div>
<div class="row t-support">
<div class="col-12">
<div class="box-ads entry-ads hide-premium">
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-3755072543989337"
data-ad-slot="1570043609"
data-ad-format="auto"></ins>
</div> </div>
</div>
</div>
</div>
<div class="background-blue pb-2">
<div class="container">
<h1 class="list-content-header">Enjoying this thread?</h1>
<div class="row t-user-2 mb-4">
<div class="col-12 col-md-6 pb-4">
<div class="box-user clearfix">
<p class="mb-2"><strong><i class="fas fa-bolt"></i> Keep Current with <a href="https://threadreaderapp.com/user/mipsytipsy">Charity Majors</a>
</strong></p>
<div class="d-flex align-items-center mb-4">
<div class="avatar">
<a href="https://threadreaderapp.com/user/mipsytipsy"><script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img onerror="imgErr(this)" src="https://threadreaderapp.com/images/avatars/90488576.jpg" alt="Profile picture"></a>
</div>
<p class="mb-0">Stay in touch and get notified when new unrolls are available from this author!</p>
</div>
</div>
<form method="post" action="https://threadreaderapp.com/account/subscribe/mipsytipsy"
class="text-center gaClickEvent" data-category="threadbuttons" data-action="subscribe" data-label="above-thread">
<button type="submit" class="sbtn btn-primary btn-sm">
<i class="fas fa-plus"></i> Add to "My Authors" list
</button>
<a href="https://threadreaderapp.com/user/mipsytipsy" class="btn btn-secondary btn-sm"><i class="far fa-user"></i> Read all threads</a>
</form>
</div>
<div class="col-12 col-md-6 enjoy-boxes"><hr class="d-md-none"/>
<div class="box-user clearfix">
<p class="mb-2"><strong><i class="fas fa-ban"></i> This Thread may be Removed Anytime!</strong></p>
<div class="d-flex align-items-center mb-4">
<div>
<img src="https://threadreaderapp.com/images/icon-pdf.png" style="height:70px; padding-right: 10px;" />
</div>
<p class="mb-0" style="min-height:60px">Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!</p>
</div>
</div>
<form method="post" id="account-archive" action="https://threadreaderapp.com/account/archive/1185384414814990336" class="text-center gaClickEvent" data-category="threadbuttons" data-action="archive" data-label="below-thread">
<button type="submit" class="btn btn-primary btn-sm">
<i class="far fa-file-pdf"></i> Save this thread as PDF
</button>
</form>
</div>
</div>
</div>
</div>
<div class="container">
<h1 class="list-content-header">Try unrolling a thread yourself!</h1>
<div class="row t-user-2 pb-4">
<div class="col-12">
<div class="card">
<div class="card-body">
<div class="row">
<div class="col-12 col-md-6 mb-4">
<img src="https://threadreaderapp.com/images/how-to-unroll.gif" width="100%" alt="how to unroll video" />
</div>
<div class="col-12 col-md-6 mb-4">
<p>1) Follow <a href="https://twitter.com/threadreaderapp" target="_blank" class="gaClickEvent" data-category="how-to" data-action="follow-tra" data-label="thread-page">Thread Reader App on Twitter</a> so you can easily mention us!</a></p>
<p>2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll"
<code style="display:block; margin:10px 0; padding:10px; background:#eee; border-radius:8px;">@threadreaderapp unroll</code></p>
<p>You can <a href="https://twitter.com/threadreaderapp/status/1054877865362112513" target="_blank" class="gaClickEvent" data-category="how-to" data-action="practice">practice here</a> first or read more on our <a href="https://threadreaderapp.com/help#bot">help page</a>!</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="background-gray">
<div class="container t-rel">
<div class="row t-user-related">
<div class="col-12">
<h1 class="separator list-content-header">More from @mipsytipsy <a class="btn btn-secondary btn-sm float-right" href="https://threadreaderapp.com/user/mipsytipsy">see all</a></h1>
</div>
<div class="col-12 col-md-6 col-lg-4 t-user-related-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/90488576.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/mipsytipsy">Charity Majors</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/mipsytipsy">@mipsytipsy</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1571903541"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">Last week I did a webcast discussion with <a class="entity-mention" href="https://twitter.com/rich_archbold">@rich_archbold</a> and <a class="entity-mention" href="https://twitter.com/inowland">@inowland</a> on the shift from managing engineers to managing eng managers.<br />
<br />
(It was a fun discussion; I think you can access it if you register here, <a class="entity-url" data-preview="true" href="https://webinar.gitprime.com/manager-of-engineering-managers/">webinar.gitprime.com/manager-of-eng…</a>)</div>
<div class="content-tweet">Rich and I have probably had two good conversations a year since @intercom_eng became a customer of ours, 2-ish years ago?<br />
<br />
I honestly didn't realize how much of "my" eng management philosophy and practice derived from shit I hoovered up from Rich, til midway thru that chat. ☺️</div>
<div class="content-tweet">Like, one of the first times we hung out we chatted about why it's so different managing eng managers than engineers. He pointed out that most line managers are effective intuitively, by leaning on our personal strengths or charisma to motivate people to join us.</div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/1187275622105501697.html">Read 7 tweets</a>
</div>
</div>
<div class="col-12 col-md-6 col-lg-4 t-user-related-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/90488576.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/mipsytipsy">Charity Majors</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/mipsytipsy">@mipsytipsy</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1571901243"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">🖤adult evening schedule🖤<br />
<br />
* ice cream bar(s) for dinner<br />
* open mail from <a class="entity-mention" href="https://twitter.com/pdehlke">@pdehlke</a>. nearly die of joy<br />
* accidentally lock self out of office while admiring own self's new shirt <span class="entity-image"><a href="https://pbs.twimg.com/media/EHoEHl2UwAAvpBh.jpg" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHoEHl2UwAAvpBh.jpg"></a></span></div>
<div class="content-tweet">in case you can't make out the script -- <br />
<br />
"In distributed systems <br />
Caches count as state"<br />
<br />
😍🦄🌈💜🖤🥰 <span class="entity-image"><a href="https://pbs.twimg.com/media/EHoEfKeU0AAZGXT.jpg" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHoEfKeU0AAZGXT.jpg"></a></span></div>
<div class="content-tweet">unicorns are ✨crushing it✨ in the silent battle to be distsys royalty slash official mascot, btw. 💜🦄☺️</div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/1187265985100730368.html">Read 4 tweets</a>
</div>
</div>
<div class="col-12 col-md-6 col-lg-4 t-user-related-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/90488576.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/mipsytipsy">Charity Majors</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/mipsytipsy">@mipsytipsy</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1571805941"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">sometimes run across a nietzsche quote that is just straight up perfect for my collection of systems humor stickers, without any modification or noun replacement whatsoever. <span class="row justify-content-center entity-multiple-3"><span class="col-md-6"><span class="entity-image"><a href="https://pbs.twimg.com/media/EHiYkkgVAAA_GcY.png" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHiYkkgVAAA_GcY.png"></a></span></span><span class="col-md-6"><span class="entity-image"><a href="https://pbs.twimg.com/media/EHiYkkfU0AEhqgT.png" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHiYkkfU0AEhqgT.png"></a></span></span><span class="col-md-6"><span class="entity-image"><a href="https://pbs.twimg.com/media/EHiYkkeU0AARqUI.png" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHiYkkeU0AARqUI.png"></a></span></span></span></div>
<div class="content-tweet">(y'all knew that's where most of them come from, right? ) <span class="row justify-content-center entity-multiple-2"><span class="col-md-6"><span class="entity-image"><a href="https://pbs.twimg.com/media/EHiZUEhUEAAo1yu.png" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHiZUEhUEAAo1yu.png"></a></span></span><span class="col-md-6"><span class="entity-image"><a href="https://pbs.twimg.com/media/EHiZUEiUUAA_RUn.jpg" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHiZUEiUUAA_RUn.jpg"></a></span></span></span></div>
<div class="content-tweet">or: <span class="row justify-content-center entity-multiple-2"><span class="col-md-6"><span class="entity-image"><a href="https://pbs.twimg.com/media/EHiZyEyVUAARSNy.png" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHiZyEyVUAARSNy.png"></a></span></span><span class="col-md-6"><span class="entity-image"><a href="https://pbs.twimg.com/media/EHiZyExU0AIWASq.png" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/EHiZyExU0AIWASq.png"></a></span></span></span></div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/1186866259171766272.html">Read 3 tweets</a>
</div>
</div>
</div>
<div class="row t-trending-thread">
<div class="col-12">
<h1 class="separator list-content-header">Related threads</h1>
</div>
<div class="col-12 col-md-6 col-lg-4 t-trending-thread-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/1050011102443134976.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/DyingNoyses">Dying N⭕️ises</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/DyingNoyses">@DyingNoyses</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1558806482"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">Guess WHAT, they’re going on a DATE. <span class="entity-embed"><span class="twitter-player"><blockquote class="twitter-tweet" data-conversation="none" data-align="center" data-dnt="true"><a href="https://twitter.com/dyingnoyses/status/1122239187263066113">https://twitter.com/dyingnoyses/status/1122239187263066113</a></blockquote></span></span></div>
<div class="content-tweet">“Great, let me just grab my coat.”<br />
<br />
Connor flashed him a smile before he headed to the back of the salon, leaving Hank to wonder how he kept tripping and falling into this guy’s good graces. People fell asleep or cried at his work, too, but he’d never asked any of /them/ out.</div>
<div class="content-tweet">...Well, but he wasn’t here for carjacking, either.<br />
<br />
Connor returned with one arm in his coat and the other one getting there, a package clutched in his hand. A little white paper sack, top folded down in a neat, even line. “Here, I threw these together for you, too.”</div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/1132342575648641035.html">Read 107 tweets</a>
</div>
</div>
<div class="col-12 col-md-6 col-lg-4 t-trending-thread-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/720827059103076352.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/lynchauthor">CLLynch</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/lynchauthor">@lynchauthor</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1554006719"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">Okay guys... here we go... wish me luck. <a class="entity-hashtag" href="/hashtag/puppetgate">#puppetgate</a> <a class="entity-hashtag" href="/hashtag/allinarowplay">#allinarowplay</a> <a class="entity-hashtag" href="/hashtag/livetweet">#livetweet</a> <a class="entity-hashtag" href="/hashtag/amreading">#amreading</a> <a class="entity-hashtag" href="/hashtag/ActuallyAutistic">#ActuallyAutistic</a><br />
<br />
Image Description: a copy of the play “All in a Row” lying on a blue pillow. <span class="entity-image"><a href="https://pbs.twimg.com/media/D29d6mEU4AACwY3.jpg" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/D29d6mEU4AACwY3.jpg"></a></span></div>
<div class="content-tweet">TW: <a class="entity-hashtag" href="/hashtag/puppetgate">#puppetgate</a><br />
<br />
Okay, let’s start with the cover. My husband pointed out that the image has three upright cakes neatly lined up and the one blue cake that is fallen over. I assume that since there are four characters, the blue one is the autistic character. Out of place.</div>
<div class="content-tweet">TW: <a class="entity-hashtag" href="/hashtag/PuppetGate">#PuppetGate</a><br />
<br />
Next you have big bios of all the cast and crew. Then there’s a two page preface written by Alex Oates and by golly he is TRYING. He uses identity first language (brownie points for that) and tries to explain everything including the puppet.</div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/1112210908002947077.html">Read 171 tweets</a>
</div>
</div>
<div class="col-12 col-md-6 col-lg-4 t-trending-thread-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/1009547932859883520.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/squire_pod">lady bex ⚔️🐺 || saw endgame</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/squire_pod">@squire_pod</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1552261965"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">Game of Thrones Rewatch: A Thread</div>
<div class="content-tweet">THE LAST TIME ALL THE STARKS WERE HAPPY WAS BEFORE NED GOT THAT LETTER FROM KING ROBERT AND THESE ARE JUST THE FACTS</div>
<div class="content-tweet">Rodrick Cassel has the BEST facial on this show. I’m just saying.</div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/1104892879313555456.html">Read 1327 tweets</a>
</div>
</div>
<div class="col-12 col-md-6 col-lg-4 t-trending-thread-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/1375583112.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/PatBlanchfield">Patrick Blanchfield</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/PatBlanchfield">@PatBlanchfield</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1548807689"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">all right friends, we're almost there, the pizza is here, and so in (serious) gratitude to those of you all who chipped in already, and confident that others might join those ranks as we go along, let's do this: Chris Christie's LET ME FINISH - the live-tweet review experience <span class="entity-embed"><span class="twitter-player"><blockquote class="twitter-tweet" data-conversation="none" data-align="center" data-dnt="true"><a href="https://twitter.com/PatBlanchfield/status/1090348760201379840">https://twitter.com/PatBlanchfield/status/1090348760201379840</a></blockquote></span></span></div>
<div class="content-tweet">nothing is more alpha than starting your memoir by getting fired on page 1*<br />
<br />
*Omarosa did this first <span class="entity-image"><a href="https://pbs.twimg.com/media/DyHmFDfX4AAJ3u3.jpg" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/DyHmFDfX4AAJ3u3.jpg"></a></span></div>
<div class="content-tweet">[does an immediate search for further occurrences of "grown-up" in the book, sees the phrase used to describe ... Paul Manafort] <span class="entity-image"><a href="https://pbs.twimg.com/media/DyHn3IvWoAE4fDH.jpg" target="_blank"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/DyHn3IvWoAE4fDH.jpg"></a></span></div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/1090404599025094657.html">Read 103 tweets</a>
</div>
</div>
<div class="col-12 col-md-6 col-lg-4 t-trending-thread-entry">
<div class="thread-card">
<div class="box-user">
<div class="d-flex justify-content-between">
<div class="avatar align-self-center">
<script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49"></script><img src="https://threadreaderapp.com/images/avatars/3220024661.jpg" alt="Profile picture" onerror="imgErr(this)">
</div>
<div style="flex-grow:1; min-width:0;" class="align-self-center">
<div class="username">
<a href="https://threadreaderapp.com/user/orgasmiccypher">🍭Suga&#039;s Candyland💦</a>
</div>
<div class="d-flex justify-content-between flex-column flex-md-row">
<div style="min-width:0;" class="align-self-start align-self-md-center">
<span class="screenName"><a href="https://threadreaderapp.com/user/orgasmiccypher">@orgasmiccypher</a></span>
</div>
<div>
</div>
</div>
</div>
</div>
</div>
<span class="time" data-time="1523983469"></span>
<div class="card-tweets" dir="auto">
<div class="content-tweet">YM 🔞 | A camboy!Yoongi Threadfic | When Yoongi put out the ad for a guy to fuck him on camera for thousands of viewers, he didn't expect much. He certainly didn't expect shy gorgeous Park Jimin to answer the call. <span class="entity-image"><img alt="" src="/images/1px.png" data-src="https://pbs.twimg.com/media/Da_8TwtWkAA4i1a.jpg"></span></div>
<div class="content-tweet">It wasn't like Yoongi ever planned on doing this with his life. It was just one of those things that managed to happen and being the type of person he was, he just went with it. Besides, it wasn't like Yoongi didn't /enjoy/ the attention.</div>
<div class="content-tweet">It all started when he was nineteen years old and fresh out of high school with a big world open in front of him. He wanted to follow his dreams, his passions. He wanted to write music and make something of himself he could be proud of. But his parents didn't agree. They didn't</div>
</div>
<a class="tweet-url btn btn-secondary" href="https://threadreaderapp.com/thread/986284273991913473.html">Read 572 tweets</a>
</div>
</div>
</div>
<div class="row">
<div class="col-12">
<h1 class="separator list-content-header">Trending hashtags</h1>
</div>
<div class="col-12 t-trending-hashtag-entries hashtags">
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/queensspeech">#QueensSpeech</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/institutions">#institutions</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/allinarowplay">#allinarowplay</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/proddev">#proddev</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/trump">#Trump</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/trumprally">#TrumpRally</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/shavuot">#Shavuot</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/lean">#Lean</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/gameofthrones">#GameofThrones</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/sinai">#Sinai</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/stanlee">#StanLee</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/actuallyautistic">#ActuallyAutistic</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/livetweet">#livetweet</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/lean">#lean</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/abuse">#abuse</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/torah">#Torah</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/amreading">#amreading</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/v5">#V5</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/marvel">#Marvel</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/queerfaith">#queerfaith</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/observability">#observability</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/rape">#rape</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/stanleerip">#StanLeeRIP</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/bombastic">#Bombastic</a>
<a class="btn btn-outline-secondary btn-sm mb-3" href="https://threadreaderapp.com/hashtag/jewish">#Jewish</a>
</div>
</div>
</div>
</div>
<div class="modal fade" id="embedModal" tabindex="-1" role="dialog" aria-labelledby="shareModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="shareModalLabel">Embed code for your website:</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="form-group">
<textarea class="form-control" id="embedCode" rows="12">&lt;div id=&quot;tttt_1185384414814990336&quot; data-option=&quot;1&quot;&gt;&lt;strong&gt;&lt;a href=&quot;https://threadreaderapp.com/thread/1185384414814990336.html&quot;&gt;Thread by @mipsytipsy: &quot;OH GOD DO NOT DO THIS THING The sign that someone does not have observability is this: they lean on alarms for EVERYTHING. They cannot de […]&quot;&lt;/a&gt;&lt;/strong&gt;&lt;/div&gt;&lt;script async src=&quot;https://threadreaderapp.com/embed/1185384414814990336.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;</textarea>
</div>
</div>
<div class="modal-footer">
<button type="button" class="button button-cancel" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="sharingfooter">
<div class="follow-us">
<a href="https://twitter.com/threadreaderapp" target="_blank" class="btn btn-outline-secondary btn-xsm gaClickEvent" data-category="how-to" data-action="follow-tra" data-label="sharing-footer"><i class="fab fa-twitter"></i> Follow Us on Twitter!</a>
</div>
<div class="btn-group btn-share-thread with-txt with-color" role="group" aria-label="Share">
<a class="btn btn-outline-primary share-twitter btn-sm gaClickEvent" target="_blank" href="https://twitter.com/intent/tweet?text=Thread%20by%20%40mipsytipsy%3A%20%22OH%20GOD%20DO%20NOT%20DO%20THIS%20THING%20The%20sign%20that%20someone%20does%20not%20have%20observability%20is%20this%3A%20they%20lean%20on%20alarms%20for%20EVERYTcannot%20debug%20or%20introspect%20their%20systems%20any%20other%20way%2C%20so%20they%20abuse%20the%20FUCK%20out%20of%20monitoring%20checks%20and%20a%20%5B%E2%80%A6%5D%22&amp;url=https%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-on-twitter" data-label="thread-footer"><i class="fab fa-twitter"></i> <span class="txt">Tweet</span></a>
<a class="btn btn-outline-primary share-fb btn-sm gaClickEvent" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-on-facebook" data-label="thread-footer"><i class="fab fa-facebook-f"></i> <span class="txt">Share</span></a>
</div>
</div>
<div class="background-blue entry-support hide-premium pd-4 hide-redundant">
<div class="container">
<div class="t-section promo">
<div class="row">
<div class="col-12 col-md-3 text-center">
<img src="https://threadreaderapp.com/images/emoji-robot.png" class="icon" />
</div>
<div class="col-12 col-md-9">
<h2 class="header mb-3">Did Thread Reader help you today?</h2>
<p class="lead">Support us! We are indie developers!</p>
<hr class="my-4">
<p>This site is made by just three indie developers on a laptop doing marketing, support and development! <a href="https://threadreaderapp.com/help/about#team" class="gaClickEvent" data-category="support-buttons" data-action="read-more-about-the-story">Read more about the story</a>.</p>
<p><strong>Become a Premium Member</strong> ($3.00/month or $30.00/year) and get exclusive features!</p>
<p><a class="btn btn-primary gaClickEvent" data-category="support-buttons" data-action="become-premium" target="_blank" href="https://threadreaderapp.com/account/premium">
<i class="far fa-gem"></i> Become Premium </a></p>
<p>Too expensive? <strong>Make a small donation</strong> by buying us coffee ($5) or help with server cost ($10)</p>
<a class="btn btn-secondary btn-paypal mb-2 gaClickEvent" data-category="support-buttons" data-action="donate-via-paypal" target="_blank" href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&amp;business=donate%40threadreaderapp.com&amp;lc=USD&amp;item_name=Thread%20Reader%20donation&amp;no_note=0&amp;cn=Say%20Hello%20or%20give%20some%20feedback%3a&amp;no_shipping=1&amp;currency_code=USD&amp;bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted"><i class="fab fa-paypal"></i> Donate via Paypal</a>
<a class="btn btn-secondary btn-patreon mb-2 gaClickEvent" data-category="support-buttons" data-action="become-patreon" target="_blank" href="https://www.patreon.com/bePatron?u=8298707"><i class="fab fa-patreon"></i> Become our Patreon</a></p>
<p><span style="color:#cc0066"><i class="fas fa-heart"></i> <i class="fas fa-heart"></i></span> Thank you for your support! <span style="color:#cc0066"><i class="fas fa-heart"></i> <i class="fas fa-heart"></i></span></p>
</div>
</div>
</div>
</div>
</div>
<script type="76a54f87d31c98e8f7d4f4d3-text/javascript">
var base_path = "https://threadreaderapp.com";
var google_ad_client = "ca-pub-3755072543989337";
var google_analytics = "UA-104569155-1";
</script>
<script src="https://threadreaderapp.com/javascript/javascript-v1-min.js?v=407" type="76a54f87d31c98e8f7d4f4d3-text/javascript"></script>
<script type="76a54f87d31c98e8f7d4f4d3-text/javascript">
$.post("https://threadreaderapp.com/stats", {"tweetId": "1185384414814990336"}).done(function(data){
data = JSON.parse(data)
if (data && data.total > 99) {
var viewStr = data.total == 1 ? 'view' : 'views'
var str = data.total.toLocaleString() + " " + viewStr;
$('#viewcount').text(str).show()
}
});
$('.action-force').on('click', function (e) {
e.preventDefault();
$('.force-progress, .force-text').toggle();
setTimeout(function() {
$('#form-force').submit();
}, 300);
});
$('.entity-mention-first, .entity-mention-threadreader').each(function () {
//console.log(this, index);
var $this = $(this);
var action = $this.parent().find('.entity-reveal-action');
$this.hide();
if (action.length > 0) return;
$this.parent().prepend('<span class="entity-reveal-action button">mentions</span>')
// add action button to show element
// hide element
});
$('.entity-reveal-action').on('click', function(e) {
$('.entity-mention-first, .entity-mention-threadreader').show();
$('.entity-reveal-action').remove();
e.preventDefault();
});
// Look for external tweet and check if they are thread to add an internal link
$('.twitter-player a').each(function (index, item) {
var link = $(item);
var matches = item.pathname.match(/\/(\d{8,})/);
if (matches != null && matches[1]) {
$.getJSON("https://threadreaderapp.com/api/v0/ping/REPLACE_ME.json".replace('REPLACE_ME', matches[1]), function (data) {
var parent = link.parents('.twitter-player');
var url = 'https://threadreaderapp.com/thread/REPLACE_ME.html'.replace('REPLACE_ME', data.pong);
parent.prepend('<div class="ribbon-content"><div class="ribbon base"><span><a href="' + url + '">Unroll available on Thread Reader</a></span></div></div>');
})
.fail(function (data) {
// Nothing to do console.log(data);
});
}
});
</script>
<style>
.footer {
bottom: 50px;
}
.entry-support {
padding-bottom: 3rem;
}
</style>
<script type="text/template" id="meta-template" data-option-hide="true">
<div class="entity-url-preview">
<div class="row no-gutters">
<div class="col-12 col-md-4">
<a target="_blank" href="${url}" class="img-cover b-lazy" data-src="${image}">
<img data-src="${image}" src="/images/1px.png" class="b-lazy" style="width:100%;" />
</a>
</div>
<div class="col-12 col-md-8">
<div class="paragraph">
<a target="_blank" href="${url}">
<strong>${title}</strong>
${description}
<small>${url}</small>
</a>
</div>
</div>
</div>
</div>
</script>
<script src="https://threadreaderapp.com/javascript/meta.js?v=407" type="76a54f87d31c98e8f7d4f4d3-text/javascript"></script>
<script type="76a54f87d31c98e8f7d4f4d3-text/javascript">
meta.start('.content-tweet.allow-preview a[data-preview]');
meta.addEventListener('success', function () { if (blazy) blazy.revalidate(); })
</script>
<div class="modal fade" id="shareModal" tabindex="-1" role="dialog" aria-labelledby="shareModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="shareModalLabel">Share this page!</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<div class="share-modal">
<div class="btn-group btn-share-thread with-txt with-color " role="group" aria-label="Share">
<a class="btn btn-outline-primary share-twitter gaClickEvent" target="_blank" href="https://twitter.com/intent/tweet?text=Thread%20by%20%40mipsytipsy%3A%20%22OH%20GOD%20DO%20NOT%20DO%20THIS%20THING%20The%20sign%20that%20someone%20does%20not%20have%20observability%20is%20this%3A%20they%20lean%20on%20alarms%20for%20EVERYTcannot%20debug%20or%20introspect%20their%20systems%20any%20other%20way%2C%20so%20they%20abuse%20the%20FUCK%20out%20of%20monitoring%20checks%20and%20a%20%5B%E2%80%A6%5D%22&amp;url=https%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-on-twitter" data-label="modal"><i class="fab fa-twitter"></i> <span class="txt">Tweet</span></a>
<a class="btn btn-outline-primary share-fb gaClickEvent" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-on-facebook" data-label="modal"><i class="fab fa-facebook-f"></i> <span class="txt">Share</span></a>
<a class="btn btn-outline-primary share-email gaClickEvent" href="mailto:?subject=Thread%20by%20%40mipsytipsy%3A%20%22OH%20GOD%20DO%20NOT%20DO%20THIS%20THING%20The%20sign%20that%20someone%20does%20not%20have%20observability%20is%20this%3A%20they%20lean%20on%20alarms%20for%20EVERYTHING.%20They%20cannot%20de%20%5B%E2%80%A6%5D%22&body=Thread%20by%20%40mipsytipsy%3A%20%22OH%20GOD%20DO%20NOT%20DO%20THIS%20THING%20The%20sign%20that%20someone%20does%20not%20have%20observability%20is%20this%3A%20they%20lean%20on%20alarms%20for%20EVERYTcannot%20debug%20or%20introspect%20their%20systems%20any%20other%20way%2C%20so%20they%20abuse%20the%20FUCK%20out%20of%20monitoring%20checks%20and%20a%20%5B%E2%80%A6%5D%22%0A%0Ahttps%3A%2F%2Fthreadreaderapp.com%2Fthread%2F1185384414814990336.html"
data-category="sharebuttons" data-action="share-by-email" data-label="modal"><i class="far fa-envelope"></i> <span class="txt">Email</span></a>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="button button-cancel" data-dismiss="modal">Done</button>
</div>
</div>
</div>
</div>
<script type="76a54f87d31c98e8f7d4f4d3-text/javascript">
$('.action-share').on('click', function (e) {
$('#shareModal').modal('show');
e.preventDefault();
return false;
});
</script>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8" type="76a54f87d31c98e8f7d4f4d3-text/javascript"></script>
<script type="76a54f87d31c98e8f7d4f4d3-text/javascript">
if (navigator.share) {
$('.action-share-email').hide();
$('.action-share-native').on('click', function(e) {
navigator.share({
title: 'Thread\u0020by\u0020\u0040mipsytipsy\u003A\u0020\u0022OH\u0020GOD\u0020DO\u0020NOT\u0020DO\u0020THIS\u0020THING\u0020The\u0020sign\u0020that\u0020someone\u0020does\u0020not\u0020have\u0020observability\u0020is\u0020this\u003A\u0020they\u0020lean\u0020on\u0020alarms\u0020for\u0020EVERYTHING.\u0020They\u0020cannot\u0020de\u0020\u005B\u2026\u005D\u0022',
text: 'Thread\u0020by\u0020\u0040mipsytipsy\u003A\u0020\u0022OH\u0020GOD\u0020DO\u0020NOT\u0020DO\u0020THIS\u0020THING\u0020The\u0020sign\u0020that\u0020someone\u0020does\u0020not\u0020have\u0020observability\u0020is\u0020this\u003A\u0020they\u0020lean\u0020on\u0020alarms\u0020for\u0020EVERYTcannot\u0020debug\u0020or\u0020introspect\u0020their\u0020systems\u0020any\u0020other\u0020way,\u0020so\u0020they\u0020abuse\u0020the\u0020FUCK\u0020out\u0020of\u0020monitoring\u0020checks\u0020and\u0020a\u0020\u005B\u2026\u005D\u0022',
url: 'https://threadreaderapp.com/thread/1185384414814990336.html'
});
e.preventDefault();
});
} else {
$('.action-share-native').hide();
}
</script>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js" onload="run();" type="76a54f87d31c98e8f7d4f4d3-text/javascript"></script>
<footer class="footer">
<div class="container">
<div class="row" style="color:white">
<div class="col-5">
<a class="btn btn-default btn-circle" target="_blank" href="mailto:hello@threadreaderapp.com">
<i class="far fa-envelope"></i>
</a>
<a class="btn btn-default btn-circle twitter gaClickEvent" href="https://twitter.com/threadreaderapp" target="_blank" data-category="how-to" data-action="follow-tra" data-label="footer"><i class="fab fa-twitter"></i></a>
</div>
<div class="col-7 text-right" >
<a href="https://threadreaderapp.com/help">Help</a> |
<a href="https://threadreaderapp.com/help/about">About</a> |
<a href="https://threadreaderapp.com/help/terms">TOS</a> |
<a href="https://threadreaderapp.com/help/privacy">Privacy</a>
</div>
</div>
</div>
</footer>
<style>.container .thread-info .count{border-bottom:dotted 1px #999}</style><script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="76a54f87d31c98e8f7d4f4d3-|49" defer></script><script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"134793e017df4a0fb9875ad7e32fbf70","r":1,"spa":2}' crossorigin="anonymous"></script>
</body>
</html>