Latest shares by kislayverma | 59 views | 0 reshares System design explains the world by kislayverma | 21 views | 0 reshares Quarkus runtime performance - a peek into JVM internals by kislayverma | 3 views | 0 reshares How to make sure subordinates manage their own rasks
Why on-call pain is a sociotechnical problem | LeadDev by kislayverma | 37 views | 0 reshares [Highlight] It is engineering’s job to own their code in production. It is management’s job to make sure it doesn’t suck. This is a two-way handshake [Highlight] On-call rotations are a classic example of a sociotechnical problem. A sociotechnical system consists of three elements: in this case that’s your production system, the people who operate it, and the tools they use to enact change on it. [Highlight] Responsibility for your code is increasingly non-optional [Highlight] Our systems are becoming exponentially more complex, and feedback loops are tightening. [Highlight] The point is that tightening these feedback loops is how we make systems better [Highlight] Managers’ performance should be evaluated by the four DORA metrics, as well as a fifth; how often is their team alerted outside of working hours? [Highlight] Everything you support, and every alert that can fire, should have a team that owns it. [Highlight] If you have ten different on-call rotations for various areas of the code base, but any time the database gets slow all ten of you get paged, this is a bad situation [Highlight] Alert when users are impacted, not before [Highlight] You need two types of alerts: ‘WAKE ME UP’ and ‘Deal with this later.’ No more, no less. [Highlight] You’re the debugger of last resort because you’ve been responsible for a mission-critical component of the system from the very beginning [Highlight] Software is owned by teams, not by individuals [Highlight] If you have three to four people on call, that’s too much of your life spent lugging around a laptop. [Highlight] five people is a bare minimum. With eight people, you are on call for a highly sustainable one week out of every two months [Highlight] Making on-call costs tangible
Farcaster by kislayverma | 524 views | 0 reshares A decentralised social network which uses blockchain with users storing data on their own servers. Interesting...
It's probably time to stop recommending Clean Code @ Things Of Interest by kislayverma | 249 views | 0 reshares Stop recommending clean code. The article says the book has some good advice, but much of it is dated, and a lot else is just bad and horrible
Login • Instagram by kislayverma | 44 views | 0 reshares Good writing tips
The Absolute Best Intro to Monads For Software Engineers - YouTube by kislayverma | 48 views | 0 reshares A practical approach to Monads
Histography - Timeline of History by kislayverma | 129 views | 0 reshares
Renato Athaydes by kislayverma | 62 views | 0 reshares
Quanta Magazine by kislayverma | 27 views | 0 reshares by kislayverma | 31 views | 0 reshares Trond recommends that organizational redesigns should be very fast because the intermediates states are chaotic and unstable by kislayverma | 49 views | 0 reshares Event sourcing paradigm for system design
Fallacies of Distributed Systems by kislayverma | 58 views | 0 reshares Explaining the well-known but often-forgotten fallacies of distributed systems
CUPID—for joyful coding - Dan North & Associates Ltd by kislayverma | 291 views | 0 reshares Dan North explains his CUPID principles which he proposes as a replacement for SOLID principles
Cross-Domain Communication with IFrames by kislayverma | 56 views | 0 reshares An in-depth article on how to do cross-domain communication. The postMessage was an interesting find
Writing is a Single-Player Game by kislayverma | 25 views | 0 reshares Finding the will to click the publish button is a battle against yourself, against your own feeling that it's not worth it.
Tools for better thinking | Untools by kislayverma | 101 views | 0 reshares A big list of all kinds of mental models and frameworks
The 4 Notetaking Styles: How to Choose a Digital Notes App as Your Second Brain - Forte Labs by kislayverma | 361 views | 0 reshares Different note taking styles and the different apps suited to them
The End of Localhost by kislayverma | 12 views | 0 reshares How does this play out against the local-first approach. Make things work regardless of internet or not
eBPF, sidecars, and the future of the service mesh by kislayverma | 99 views | 0 reshares Learn more about eBPF for high scale code by kislayverma | 10 views | 0 reshares This rant about inefficient computing resonates deeply with me. In college, I was obsessed with killing windows processes and running as trimmed down a version as I could. Yes don't worry about micro-optimizations etc etc but much of the way we program today ought to be criminal.
The template to plan a successful large scale event - YouTube by kislayverma | 7 views | 0 reshares Most tech companies do special, often months long prep work to support high scale events. This is a template to do this prep
ThinkingLabs:: Thierry de Pauw - On the Evilness of Feature Branching - The Problems by kislayverma | 77 views | 0 reshares On the evil of feature branching [Highlight] We achieve this when committing frequently, multiple times a day, regardless of code complexity or team size [Highlight] This means if the build is too slow, we need to speed up the build; if tests are too slow, we need to write better and more concise tests; if the hardware is too slow, we need to buy faster hardware; if the codebase is too coupled, preventing us to write concise tests, we need to decouple the codebase [Highlight] As long as we have not yet merged our branch back to mainline, the rest of the team simply does not know in which direction we are taking the code to implement the feature we are working on. [Highlight] To summarise: Working on mainline forces communication! [Highlight] Because feature branches hide work for the rest of the team, it also discourages the adoption of refactoring. [Highlight] Collective Owernership is one of the key practices from Extreme Programming: anyone who sees an opportunity to add value to any portion of the code is required to do so at any time. [Highlight] The bigger the batch size, the more work we have in progress. The more work in progress the more inventory we have. Inventory is just money stuck into the system. [Highlight] Because long-running branches create batch-work, they also create bigger changesets. Bigger changesets mean more risks. [Highlight] If we commit more frequently to mainline, the Continuous Integration process will process a smaller changeset. If the build happens to break, finding the root cause will be fairly easy because the changeset is so small by kislayverma | 47 views | 0 reshares A Twitter thread on how philosophers changed their minds
My Mistakes by kislayverma | 21 views | 0 reshares Ron Jeffries on what he says but sometimes doesn't do, and what he doesn't teach but sometimes does
Go Native with Spring Boot and GraalVM by kislayverma | 108 views | 0 reshares Some cool stuff coming in Spring Boot 3 by kislayverma | 8 views | 0 reshares and we continue talking about REST-vs-GQL in 2022. I wonder if GQL is so much better why it hasn't seen runaway adoption or atleast much wider tooling. People continue to make rest tools - which would suggest that there is "something" missing or not really required about GQL by vermak | 128 views | 1 reshares Apparently the only paper on crypto I need to read :)