That's not satire, that's trying to show you how to make classes and factories in that language.
This is showing you how to build a full website with microservices on GCE/Kube.
It's obviously overbuilt for what it does, that's not the point. The point is to show you how to build something complicated with simple examples.
This is an example of an extreme opposite. Almost destructive.
Google has enormous mindshare amongst developers; and when they put something like this out there, people will actually see it as an example to follow.
Where is the blinking warning sign saying "do not try this at home"?
This is nothing like creating too many factories in a Java application.
When I look at this I think, "Man what a cute little architecture, but at least it shows some of the basics of a large scale website".
Software evolves to spaghetti over time unless one makes an effort for it not to happen.
It makes no sense to start with spaghetti.
I know hn don’t like one line questions like that which may be read as an insult. But I honestly cannot tell.
It is obviously a lot of work. But the technology mix and design is just absurd. The choice of web shop with hipster products is tongue in the cheek but so was the pet store of year 2000.
Sending emails is a one-liner in Django. Am I a sucker for not building my own email sending service?!
Of course being a Google demo they have to include the obligatory ad server service, in Java no less. Nonsense like this is why I'm steering my kids away from considering software development as a career.
An example of an email sending service is Sendgrid, who have built an entire company around this service.
They are alive because they take the spam blame for you.
It's still a one-liner once you've configured your async task handler. Which makes the example custom email sending microservice even more ridiculous when it can be done trivially by configuring proven off-the-shelf components and third party email delivery services.
I wasn’t sure how ready rq was for prime time, but I’ve hit far too many celery bugs and the maintenance hasn’t been great for awhile.
Django-RQ's job decorator is basically a drop-in replacement for Celery's task decorator. Django-RQ's built-in Django admin app is very nice.
My Celery usage was pretty simple (mostly background email sending and PDF generation) but for those use-cases Django-RQ has been a very good replacement. Your mileage may vary of course.