• 1 Post
  • 40 Comments
Joined 3 years ago
cake
Cake day: April 10th, 2022

help-circle

  • I am so tired of these sorts of shallow analyses from people that think their screw-ups are actually caused by EDAs or micro services or whatever. They’re even totally transparent about the fact that they did because they heard cool things but never say “so we sat down to learn about best practices, what the current state of the art is, and considered how our use cases matched the architecture”

    They just say “we thought it would be cool so we just started doing it and it sucked - here’s why that’s an inherent problem of the architecture and not in any way related to our behavior”.

    Yes. If you take a team of people who build n-tier and hexagonal MVC monolithic apps, and then tell them to build micro services, they’re going to build a bunch of n-tier or hexagonal MVC monolith candidates and eventually end up with a single service that does too much and ultimately becomes the monolith.

    Yes. If you take a team that does 100% synchronous HTTP interfaces, SOAP or ReST, and then tell them to build microservices, they’re going to daisy chain those microservices via synchronous HTTP interfaces, and if you tell them to build an EDA they are going to build an EDA that attempt to replicate all of the aspects of their synchronous HTTP interfaces with busy polling loops.

    So stop doing that and actually do the hard thing of learning fundamentally different architecture, techniques, technologies, trade offs, best practices, operational patterns, design patterns, and heuristics and principles for managing software. Learning is difficult and humbling. But it sure beats writing ignorant articles like this.






  • Honestly this is completely ridiculous. Hypertext using HTML constraints is absolutely insufficient for representing application state. It’s the wrong tool for the job and always has been, because it conflates document structure with semantic meaning.

    Said another way, HTML cannot be relied on to capture a representation of application state.

    The reason REST doesn’t use HTML in most contexts is because applications don’t use HTML in most contexts anymore.

    Demanding that application representation use a specific encoding strategy is ridiculous and misses the point entirely, which is that HTTP is no longer the right protocol for the job.






  • Specialist is too thin. The specialists only know what they know and they don’t want to learn new things outside their speciality. So I had to hire a new person everytime we found a speciality gap because the specialists were like “not my job, I am an X specialist, go hire a Y specialist”. Then, they held their work tightly, no cross training, so the specialists all became their own brand of bottleneck. Different work speeds and different levels of quality meant that ego came to defend against performance complaints, and I as a manager couldn’t add more people to the problem areas because they weren’t trained in that area and the specialist could do it faster than they could train others to help.

    That being said, all my full-stack team members had specialities. That’s what T-shaped means. I had frontend specialists who could work the whole stack, backend specialists who could work the whole stack. Dev tools specialists who could work the whole stack. Architects who could work the whole stack. Everyone we hired had something they were best at, and an alignment to learn the whole stack. Within a year they were able to work on all tech in the stack and anyone could bring in a new tech to solve a problem and everyone would learn it.




  • Think about the alternatives - either you divide the stack into separate teams or you have non-overlapping experts in the same team. Both are horribly worse.

    With the multi-team architecture, no one can deliver anything on their own. They all have to hand off their work to someone else and receive handoffs from someone else. Rework becomes huge as downstream teams with expertise not present upstream identify flaws and send work product back for revision.

    With non-overlapping experts, you have a team of N with N bus factors of 1. No one can get sick or take vacation. If someone quits, dies, or wins the lottery, the whole team shuts down while they try to find a replacement. You can fix this by hiring 2 or even 3 experts per area. So now your team is full of redundant experts that fight for expert recognition. The handoff problem remains but is somewhat lessened.

    A full-stack team is not a team of pure generalists. A full stack team is a cross-functional team that owns the entire value stream (design to production) and cross-trains internally. Hiring people with specialized knowledge is predicated on their willingness to learn all other areas and teach their area. Only T-shaped professionals (depth in one area, breadth across the stack) inhabit the team and only people with the humility to learn need apply.

    Over time, a full stack team outperforms every other team. The team is internally redundant on all tech, so bus factors are lowest when new people are added and bus factors continuously get larger over time as people cross-train. New hires have built in training because the team is always training. New tech can be added regularly because everyone is always training and learning.

    Full stack teams are the best form of software team hands down.


  • Why is looking at the root cause of something a “justification” in your mind?

    Have you ever heard of a leading question? This is an example of one, because you assume tribalism to be the root cause of racism. What evidence do you have to support this argument? Why does tribalism exist for tens or hundreds of millennia but racism only get constructed as capitalism is in the process of emerging from feudalism? Doesn’t sound at all like tribalism is the root cause of racism.

    If all we do is react to what’s happening now instead of finding out how to prevent it from happening in the future, we’re just fighting a losing war of attrition for the sake of ideology

    Yeah, that’s what I’m saying. Don’t react to people “being racist” as though it’s just individual behaviors. See it as a historical process. When you see it as a historical process, you see that racism is THE national pattern of the USA, because the USA emerged in the same context that racism was being constructed in. It’s accurate to say that the USA and racism are deeply related because racism was being invented as part of the colonial project and the USA emerged from the colonial project and because racism was being invented as part of the capitalist project and the USA emerged and extended and ultimately maximized the capitalist project.

    In order to solve this problem we need to look at more than just the surface, and do more than just point fingers at everyone else.

    Do you think that seeing racism as a system that was constructed by Europeans as they entered the 1400s and through to the present day is looking at just the surface or pointing fingers at everyone else? Really? That’s your assessment of that position? Well, blow me down, I don’t really know what to say to that.

    It seems to me that saying “racism is just tribalism and everyone engaged in tribalism” is quite literally a surface level analysis that quite literally points the fingers at everyone else. Your assessment is pretty on the nose for exactly the position you hold. But I’ve come to expect projection from white liberals at this point. You seem incapable of seeing the irony of accusing me of the very thing you are doing.



  • Racism is not the same as personal bigotry. Whether Columbus was “racist” or not is irrelevant. European society was still developing racism as a system back in the 1400s. The concept of blood quantums, however, was developed around the same time Columbus was alive. So yes, there was systemic racism in Europe during Columbus’s time, but there wasn’t a “white race” concept at the time. It was mostly smaller races of different countries and what bound them all together was Christianity. White was explicitly codified as a concept in law in the Americas.


  • I’ll make this one easy for you. The Guardian is a garbage white supremacist liberal rag that does the bidding of North Atlantic imperialists. But here’s a shit article they wrote that explains this particular thing: https://www.theguardian.com/news/2021/apr/20/the-invention-of-whiteness-long-history-dangerous-idea

    Here’s the subtitle: “Before the 17th century, people did not think of themselves as belonging to something called the white race. But once the idea was invented, it quickly began to reshape the modern world”

    That’s right. There was no such thing as the white race until the 1600s. And here’s the relevant excerpt:

    […] the plantation owners initially sought to protect themselves by giving their “Christian” servants legal privileges not available to their enslaved “Negroes”. The idea was to buy off the allegiance of indentured Europeans with a set of entitlements that, however meagre, set them above enslaved Africans. Toward the end of the 17th century, this scheme witnessed a significant shift: many of the laws that regulated slave and servant behaviour – the 1681 Servant Act in Jamaica, for example, which was later copied for use in South Carolina – began to describe the privileged class as “whites” and not as “Christians”.

    Whiteness, white supremacy, was invented in the new settler state that became the USA. It was an extension of European supremacy and part of the liberalization process that was occurring throughout Europe as the “age of discovery” began lifting the merchant class into positions of power. This new financial class sought new social forms that would allow them to supplant kings while still maintaining the power structures they needed to continue extending their dominance across the world. Since kings were kings by divine right, they were literally working against a social fiction that required them to attack religion, which was impossible, so they needed new systems that directed power away from religious explanations. They needed to maintain Christianity as a power structure but divorce it from kings. Thus, from the 17th century onward, an entirely new system of racialization was devised and expanded including things like race science, anthropology, cherrypicking from religious and philosophical traditions, eventually incorporating Drawinian theory, and focused entirely on making the imperial project manageable.

    In the US you see this pretty damningly with regards to the native population. They were a different race, they were not Christians, they needed to be mass murdered, their lands needed to be blighted and destroyed, their ways of life (plants, animals, and water) needed to be made extinct and poisoned beyond repair. To do this, the US needed to field a military into the frontier. That’s the source of every town named “Fort Something”. Those forts were created to exterminate and oppress native Americans. Those towns never stopped being that. It’s just that they were victorious in their extermination campaigns. The laws are still on the books. The police force is still descended from the institutions of genocide. The roads, ports, prisons, residential neighborhoods, waterways, industrial zones, and agricultural zones around those towns are the living embodiment of the displacement efforts that trace themselves back to the frontier forts and their genocidal program, founded on racism.

    And even The Guardian, shite rag that it is, is able to write about it.