It can display images in your terminal. This is made pretty clear by the first paragraph on the page and also by the Wikipedia article it links to[0]; I'm wondering what else you're asking for.
Yazi, If, and Ranger file managers use it to display images inline. Euporie allows you to run a graphical Jupyter console session.
Sixel is a very old standard and has been used to display graphics in terminals since the 80s. It fell out of favor when high-resolution bitmapped desktop environments became mainstream (and affordable), but it is still useful if you are doing remote console work and don't want to set up network hoops with ad hoc HTTP servers just to view a remote diagram.
(I define it as "written words in a human-readable language". You must have something else in mind, because neither ASCII art nor control codes fit my definition.)
That's assuming you don't separate concerns in your monolith into modules with clear boundaries and dependencies. If you did that from day one, splitting a module off to a different service is easy.
If you can manage that then there's no real benefit to microservices though. The reason for splitting is to solve the problem of failing to separate concerns, so a team that can't do that well is better off building microservices from the start because the alternative for them is building a monolith that will be hard to split.
I don’t agree. The technical device we use for creating clear boundaries, useful abstractions and managing dependencies in monolithic code is the function/method/procedure call.
The history of distributed software is littered with the corpses of attempts to make the RPC look like a function/method call (I worked for a CORBA vendor decades ago). But these two techniques are so different on a fundamental level they are not substitutable except in the most trivial cases. The compute and elapsed time RPC overhead which makes perfectly good local abstractions completely impractical across a network. And then there are the differences in terms of failure modes, concurrency and synchronicity.
So even a beautifully designed and layered piece of “monolithic” software with a code base costing of coherent and clean abstractions will not be easy to port to a microservices/distributed architecture.
AI can be used to write E2E tests, unit tests, etc. The issue I find is that I would like a different model with a different context to design and write the tests. I haven't found the right technical solution to this yet.
When models write both the code and the tests, they might go back and forth between the code and tests until they reach a working solution. This seems dangerous.