No imagination is needed to see why the gopher is the mascot of Google’s open-source programming language, succinctly named Go. Even apart from those first two letters, the gopher turns out to be an appropriate mascot because that cute little critter is nothing if not a prolific breeder. And Go has certainly bred a great many “gophers” (i.e., fans) in the six years since its release. And now…IBM.
Yes, Big Blue has quietly established a port for Go in its System z mainframes and has joined upwards of 800 other contributors to the Go ecosystem. Given that Linux already has a comfortable berth on z Systems, this move gives mainframe customers yet another option for playing in the open-source environment. It also further entrenches the mainframe as the world’s most flexible and broad-based hardware platform. So get ready to see more Go events — “GopherCons” — popping up, with the z System in a starring role.
IBM’s powerful thrust, however, is not the only thing that propels this convergence of distributed and mainframe forward. For example, Syncsort, with its Ironstream® offering, has punched far above its weight in demolishing a barrier that kept corporations and manufacturers with commodity-based distributed systems from tapping into the wealth of operational data residing on the mainframe. The magical conduit that is Ironstream currently feeds into the Splunk Big Data platform, but no one doubts that other Big Data platforms are ready and eager to partake.
This is all goodness. Large distributed systems and mainframes both deal with massive amounts of data, networking, applications, and hardware, which impose huge challenges in terms of their care and management. Google, as one of the world’s largest IT system operators, began the Go development project in 2007 in order to get answers to those challenges faster and more efficiently.
The Go developers, as they looked upon the modern computing landscape, saw the landscape as being “almost unrelated to the environment in which the languages being used — mostly C++, Java, and Python — had been created.” This meant that “the problems introduced by multicore processors, networked systems, massive computation clusters, and the web programming model were being worked around rather than addressed head-on.” The goal of Go, then, was “to make working in this environment more productive. Besides its better-known aspects such as built-in concurrency and garbage collection, Go’s design considerations include rigorous dependency management, the adaptability of software architecture as systems grow, and robustness across the boundaries between components.”
Bingo! Robustness across boundaries! Which is exactly what we see when IBM joins with a growing army of “gophers” to burrow ahead to higher levels of convergence.