Cindy Sridharan

medium.com/@copyconstruct · Personal blog · on HN since 2017

Cindy Sridharan writes about distributed systems, microservices, observability, and testing in production.

What HN saysCommenters point to her posts on testing microservices and testing in production, and to her guide to the socat tool.
41HN people shared it
6linked it in comments
58stories submitted
382story points
6 years agolast shared
2017people per year2026

Most-shared posts

  1. 1
    Testing in Production: The Hard Parts
    7 people · 17 points · first shared 2019 · discussion on HN
  2. 2
    Post-Commit Reviews
    4 people · 51 points · first shared 2020 · 35 comments on HN
  3. 3
    Small Functions considered Harmful
    4 people · 36 points · first shared 2017 · 23 comments on HN
  4. 4
  5. 5
    Testing Microservices the sane way
    3 people · 163 points · first shared 2017 · 45 comments on HN
  6. 6
    Distributed tracing – we've been doing it wrong
    3 people · 9 points · first shared 2019 · discussion on HN
  7. 7
    Best of 2018 in Tech Talks
    3 people · 8 points · first shared 2019 · discussion on HN
  8. 8
    Testing in Production, the safe way
    3 people · 7 points · first shared 2018 · discussion on HN
  9. 9
    API versioning and evolution with proxies
    3 people · 6 points · first shared 2018 · discussion on HN
  10. 10
    The Method to epoll Madness
    3 people · 6 points · first shared 2017 · discussion on HN
  11. 11
    Technical Decision Making
    3 people · 4 points · first shared 2017 · discussion on HN
  12. 12
    Monitoring in the time of Cloud Native
    3 people · 3 points · first shared 2017 · discussion on HN
  13. 13
    Effective Mental Models for Code and Systems
    2 people · 6 points · first shared 2019 · discussion on HN
  14. 14
    A Decade in Review in Tech
    2 people · 5 points · first shared 2020 · discussion on HN
  15. 15
    Fundamentals of non blocking I/O on Linux/BSD
    2 people · 5 points · first shared 2017 · 3 comments on HN

What HN people wrote when they linked it

penagwin · 2020-01-17
For sure. There's dozens of types of tests (although many don't apply to certain use cases). In a healthy system you should be using a lot of them. And they don't stop at deployment, you need to be tracking exceptions (after all, production is the final, and best test environment). This article has some nice diagrams of the different kinds of tests https://medium.com/@copyconstruct/testing-in-production-the-safe-way-1…
josh_overseer · 2017-10-13
Solid point! I agree that it's super important to know your system well enough to know what your key metrics/kpis are without us. We are no substitute for that. One of the key places we try to fit in is after you may already know something is going on (ex, your kpis are being affected) and you want to drill down deeper to understand what's going on at a more detailed level. With a deep enough understanding of your system, you may have some ideas about where to look for more info, but there can sometimes be so many places to look that it's hard to know where to start. That's where we come in. One of the articles that really influences how I personally think about this stuff is here, it's a great read if you have the time: https://medium.com/@copyconstruct/monitoring-in-the-time-of-cloud-nati… . In the words of the article, we fit in between the overview and debugging part of the monitoring pyramid.
fla · 2020-05-18
There's a very nice write up about the socat command line interface here [1] in case anyone is interested. [1] https://medium.com/@copyconstruct/socat-29453e9fc8a6
djhaskin987 · 2018-03-17
Sure. What I mean by that is that if you use kubernetes, you will be using kubernetes service Discovery, endpoints, ingress, and volumes, where nomad is strictly the scheduler. For example you can easily set up nomad with consul service discovery and then use the same consul instance for service discovery of services living outside nomad, such as legacy applications. It's hard to do something like that with Kube services because kubernetes comes with its own service discovery mechanism. For more comparison between the two schedulers coming from the point of view of someone who chose Nomad, look at this article https://medium.com/@copyconstruct/schedulers-kubernetes-and-nomad-b0f2… . I especially found his idea of incremental infrastructure improvement interesting, near the bottom if of the article.
simplesleeper · 2018-03-13
Why not move to just a production environment? Arguments are well presented here: https://medium.com/@copyconstruct/testing-microservices-the-sane-way-9…
thaumaturgy · 2020-06-26
> src/Grouchy/MessageStream.php:17: Class has too many methods: 12. Can be up to 10 methods. > src/Grouchy/MessageStream.php:66: Your function is too long. Currently using 40 lines. Can be up to 20 lines. sigh. One of the annoyances of modern PHP practices is the tendency to write one class, per file, which extends or implements one other class, and adds one or two functions to it. Every single logical abstraction in a PHP project can have somewhere between one to thirty different classes associated with it, and larger PHP projects end up with a thousand or more files. All of this is enabled by composer's PSR-4 autoloading support, so as long as you give your classes the right kind of names and put the files in the right places, you don't have to think about what it means to hit the disk that many times on a page load. Consequently, there are more and more harebrained caching schemes showing up to kind of paper over this architectural problem. And tracking some unexpected behavior through that many different pieces just suuuuuuucks. I fully get that god objects are bad. But metrics like these are making complex PHP projects worse, not better. PHP is not, and should not be, Java. Java has already shown us what the end result of these practices looks like. Let's not do that. I desperately want a good code analysis tool for PHP: something that can look behind whether there's exactly one space before a '*' in a comment block and into deeper things like, "hey, on this line…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close