Profile picture of David Paul McQuiggin
David Paul McQuiggin
[Remote] .NET Lead Engineer | Solution Architect | CTO | Azure | Data | AI
Follow me
Generated by linktime
July 1, 2023
It's interesting to see Twitter down, apparently worldwide. It's obviously sections of functionality that are having difficulties; unfortunately the core ones. I remember all the videos about "how Twitter engineered for scale", as far as I can see, Twitter uses a mix of it's own data centres, AWS and GCP. There are multiple blog posts about wonderfully engineered solutions, with Service Meshes, Microservices, Kubernetes, etc. etc. There is rate limiting taking place (although it's probably not wise to have the default message "Something went wrong. Try Reloading."), some subsystems are working, so it seems they have tried very hard to build in some best-practice for availability. But every system will have problems, there are limits, even when you have the Richest Man In History as your CEO... It's not yet clear the underlying cause. The issue I would fault Twitter on, is lack of communication / feedback - after three hours, it's status page shows all systems working, and there has been no messaging from the company that the system is encountering difficulties. This is snowballing, as more people rapidly click "refresh", then taking to other social media to ask the same question thousands of times - "is it just me?" I'd certainly add communication of outages to your checklist for availability. #microservices #availability #communication
Stay updated
Subscribe to receive my future LinkedIn posts in your mailbox.

By clicking "Subscribe", you agree to receive emails from linktime.co.
You can unsubscribe at any time.

July 1, 2023
Sunday evening take: One thing I dislike about working in software development over all these years, is that so much time is spent arguing over software ideology, as if there is an absolute perfection or one true way. e.g. SOLID is guidance, to be taken under consideration, applicable in some scenarios and not in others, it is not the word of god / the one true way. Developers spend too much time fighting over their interpretation of what is basically other people's opinions, something they have read very recently in a blog or seen in a course, as if it is some sort of divine inspiration. They then point-score as to who has the most perfect understanding of the opinion of someone who wrote a book about their own experience, but has no idea of the realities of the project you are now working on. I have been in so many code reviews, where developers were obsessed with arguing over the minutiae of a particular line of code and how it does not meet framework guidelines / latest C# language syntax / a specific pattern in a book, that they completely missed that it did not actually meet the business requirements. Guidance such as SOLID, Clean Coding, DDD etc. is fine if you treat it in the same way as 'look both ways before crossing the road', but not 'you must spend 10 seconds when looking left, and no more than 1 second later, look right for 13 seconds, or a successful crossing of the road will be deemed inadmissible' Be pragmatic instead of dogmatic, is the best advice I can give, after 32 years of building systems.
21 comments
April 3, 2022