How's that different from finding a routine (eg. one called GeoGraphics()), or JSX, or HTML/CSS for that matter?
You still need to know where to look, and you need to find the construct (routine, markup, builtin primitive, whatever) that does what you want.
The whole example is moot.
Graphics in Mathematica is symbolic (according to the documentation). You can think of it as a Lisp-based vector graphics. It's still possible to manipulate pixel data extracted w/ "ImageData". It's just that "Image" object never allows direct pixel manipulation, which is the same in some other frameworks.
Also, "Style" is a function, not a block, that attaches styling information to its first argument. "Text" is a graphics primitive that provides placing information for text inside "Graphic". "GeoGraphic" is not neccessary here, and you can load map images with "GeoImage", and "Inset" them into graphics object. "GeoGraphics" is only good for rendering map-related data, like country borders, regions, roads, names, etc.
Wolfram language has its own patterns, and is pretty solid. Personally, I like it because it fully abuses its Lisp-like design, yet everything is curated by one single sane entity. I just dont want to endure a bunch of pretty hax0rs who never stop coming up with half-baked in-house solutions.
Wolfram’s vision for computation is much more profound—to unify and automate computation across computational fields, application areas, user types, interfaces and deployments.
They even mention blockchain further down!
In a product with an explicit owner, all you'd hear is "yes boss".
Is not that one want wolfram to be oss, one (me) wants a product with wolfram abilites and features, that you can grow, expand, correct, etc.
ImageCompose[ Import["someworldimage.jpg"], Rasterize["Hello world" ]
For "unified", try sandboxed, walled harden or evolutionary dead end. Just look at this literal Hello World example:
GeoGraphics[Text[Style["Hello!", 150]], GeoRange -> World]
In any other language, if I wanted to write some text on a graphic, I would find a routine to load an image into memory and another to render text into that memory. That's genuinely easy.
But in Wolfram's case, I'm apparently just supposed to know that there's something called "GeoGraphics" that does this kind of thing, that the text goes in a Style[] block (what?), and "GeoRange -> World" is how you tell it to create a worldmap as a background. WTF. And don't tell me "read the docs", because even if I found this, it wouldn't help me much with the rest:
http://reference.wolfram.com/language/ref/GeoGraphics.htm