← Back to context

Comment by nottorp

1 day ago

Let's add a post scriptum:

Whatever you're working on, your project is not likely to be at Google's scale and very unlikely to be a "complex system".

Let's add a post post scriptum :)

Just because your project might not be at Google's scale doesn't mean it is therefore also not complex [^1]

Example: I'd say plenty of games fit the author's definition of "complex systems". Even the well-engineered ones (and even some which could fit on a floppy disc)

[1]: https://en.m.wikipedia.org/wiki/Affirming_the_consequent

  • Speaking of games, why hasn't google made a game. They could create a gaming division and well... make one. Amazon did. I wonder why they haven't.

    • Google has a really hard time grokking the games industry, to the point they can hire people from it and just almost totally ignore them. Their ideas on how Android game development should be done were utterly hilarious, and it's only because of a couple of their dev relations people going to ludicrous lengths that it is actually viable at all.

      Fundamentally, and ironically, Google likes to offload complexity on to everyone else in their ecosystems, and they got so used to people being willing to jump through hoops to do this for search ads/SEO they are very confused when faced with a more competitive environment.

      One reason Google can't make games is they can't conceive of a simple enough platform on which to design and develop one. It would be a far too adventurous constantly moving target of wildly different specifications, and they would insist you support all possible permutations of everything from the start. There are reasons people like targeting games consoles, as it lets you focus on the important bits first.

    • As someone who has firsthand experience:

      A. The same reason Amazon had/has such a hard time.

      B. Google lacking the same persistence of Amazon (Consider all the products that are killed)

      C. Google's hiring process. (They organizationlly do not know how to hire specialists)

      1 reply →

IMO even a more interesting observation is that even Google itself doesn't necessarily work on large scale, e.g. many regionalised services in Google Cloud don't have _that_ many requests in each region, allowing for a much simpler architecture compared to behemoths like GMail or Maps

Don't underestimate my colleagues' abilities to turn the simple into the complex!

Managing complexity pays off sooner than one would think.

Even a project that's like 15k lines of code would benefit from a conscious effort to fight against complexity.

Complex is orthogonal to Large. Some small to medium scale systems address an incredibly complex problem space. Some large systems are solving relatively simple problems. Of course I do agree that size introduces it's own complexity.

IMO what we term "complex" tends to be that which the current setup/system struggles to deal with or manage. Relatively speaking google has much much higher complexity, but it doesnt matter as much, because even in simpler cases we are dealing with huge amount of variety and possible states, and the principles of managing that remain the same regardless of scale.

For small scale one can build a simple system but I see many are trying to copy FAANG architecture anyway. IMHO it’s a fallacy - people think that if they’ll would copy architecture used by google their company will be successful like google. I think it other was around - google has to build complex systems because it has many users.

  • Yes, it's called "cargo cult" and it applies to a lot of architecture and processes decisions in IT :)

  • It’s an infectious disease among developers. Some people would spend weeks making a simple landing page, and it would require at least 3 different cloud services.