Monday, September 16, 2019

Studying Ancient Lore

Those already inner circle to "the gossip" know Python, the computer language, got its name from Monty Python, the famous Anglophone comedy troupe. Where did the latter get its name? Ah, well now, feel free to dive down that rabbit hole.

In the meantime, we have the ancient Greeks in the background, with their hallucinogenic (?) rotting snake carcass, if we're to believe the myth, not that myths are designed to be believed (not by Protestants anyway, after what all they've done to that word).

I'm referring to the famous myth of Apollo, who displayed adult masculine qualities quite early in his youth, one of his first feats being the heroic protection of his mother, Leto, and Zeus's ex.  Apollo slew the great Python that the new Mrs. Zeus (Hera) had sicced on Leto, Zeus being his dad.

True also, is Athena enjoyed cult status among the Delphians and her lineage potentially traces back to sybils (female seers) well before the Pythian ones were installed to serve Apollo.  Vapors rising from the rotting Python under Mt. Parnassus is what supposedly gave them powers.

We might use Athena's story as a portal back to a more Amazonian root, wherein women were known to handle snakes (symbolic of their healing power).  Yes, we're somewhat talking about Wonder Woman here, invented later, but with the same Greek pantheon for a backdrop.

Spreading such lore in North America, today, is more the business of the comic book and blockbuster entertainment business, than it is of any practicing cult.  A Python programmer is more likely to absorb memes such as these through pop culture than through anything like formal scholarship.  The latter is about studying myths as these were cast in ancient times.  Contemporary broadcasting is something else entirely.

Apollo is conventionally cast as the archetypally rational, but at what cost?  Some young anglophone gents I was listening to on Youtube, suggested Europe had struck a Faustian bargain to obtain a rationalist enlightenment, at the cost of its soul (Philemon).  Goethe, Nietzsche and others were hoping to revitalize the moral fiber (which translates into morale in many ways), but the collective madness of world wars proved overwhelming.

Contrasting the Apollonian with the Dionysian has become cliche. Indeed, Apollo took off at the end of autumn, allowing the Dionysians to see Delphi through the winter.  Apollo would return in the spring.  The arrangement, from this distance (21st Century) seems symbiotic.  Athena, going back to the original Gaen wisdom, is in her furious form more a Medusa herself.

I'd be off base to suggest I'm alone in my willingness to connect Python, the computer language, to the mythological lore.  From the early days, Medusa was a way to deal with the tangle of asynchronous programming, which reinvented itself as Twisted, and then in the Standard Library, as asyncio.

What Apollonians might call "rot" (as in "rots the brain") is to others the sweet vapor of insight, conferring oracular or ocular powers (points of view) upon the Muse inspired programmer.  Athena is the goddess of crafts, including military (e.g. arts, including martial).  She helps with the process of individuation, within the minds of her PyLadies (Pythians).

Tuesday, September 10, 2019

Looking Back on Coding

Coding interactively is a rather different experience than coding "off line" (as it were), then running source through a compiler, then testing the results.  I learned to appreciate that difference early, as I had FORTRAN and PL/1 in my face even as I was using APL (Kenneth Iverson's) from the terminal.

Given how enamored I was with using an interactive shell, more like Logo's, it stands to reason I would follow the dBase "dot prompt" in the direction of FoxPro, and then Visual FoxPro (VFP), which the language eventually became under Microsoft's dominion.

However, those more well-versed and well-rounded, know it's not either/or, given Python itself is written in C, and extended in C++ and all that.  The joy of running C code interactively is what Python is all about, one could say.  Furthermore, it's somewhat inaccurate to say interactive languages don't feature a compilation step.  We have the bytecode layer, and a virtual machine (such as Java's) to think about.

Be that as it may, I stayed with the more interactive environment, which has more recently evolved into the Notebook environment.  Steve Holden was nudging me to look at those early on, and I did, but just a little.  I've subsequently come to better appreciate their significance, along the lines of that article in Atlantic Monthly.

In addition to an interactive chat-like "dot prompt" or "prompted" environment (now sported by JavaScript thanks to Node, right?), another feature that makes language learning so much easier (in my experience) is something concrete and visual, in your face, to code against.  I'm talking about everything from physical robots to virtual on-screen turtles.  Just having something there in the sandbox to play with, that's palpable, is a big aid to comprehension.

Eventually, we come to see a lot of what we're controlling "inside our heads" (goes the expression) and so may be less dependent on training wheel visuals.  If you're into rendering colorful geometries on screen, or fractals or what not, then "leaving the visualizations behind" is not a goal, let alone much of an option.  Under visualization comes plotting (making plots, charts), so it's not like having colorful, shapely output is that esoteric a fascination.

I think a lot of us will agree that a sea-change occurred with the evolution of the web browser atop the internet, given tcp/ip works inhouse as much as publicly.  Why not make the user GUI an HTML defined experience?  Indeed, that would become the norm, even though the web browser itself is what we'd call a "thick" application.  Given how it spreads to look through almost every API out there, we could call it "thin" (a lot for a little, more with less).

However, a subsequent revolution after that, was the evolution of the smartphone-based app.  The general purpose browser is still there, but the special purpose client-side application is again a driving thing.  I didn't jump into the app business.  I'm not that fascinated by tiny screens.  I stayed with Python, especially teaching it, while gradually moving more into video-casting as a medium.  Given my focus on geometry, it makes sense that I'd gravitate to a "show and tell rectangle" more like a movie theater's.

Tuesday, September 03, 2019

On Turing, Coding, and Gender


Thanks to greater STEAM-PATH integration, intersecting on A (for Anthropology), I'm able to segue to and from Engineering and issues around gender, pronouns and stereotyping.

In the School of Tomorrow, you're chugging along in cryptography when, boom, you're looking at white supremacist propaganda or some other flavor Social Darwinism.  We don't shy away from social issues, just because we're focusing on maths.  Who has that luxury?

That being said, when we do buckle down and focus on code, it's against the backdrop of a more relaxed philosophy, meaning we know we're free to think globally, even while coding locally.

The Python community has had to wrestle with Codes of Conduct already, so it's not like we're new at this game.  You may be able to find some public archives wherein we've done some of our processing (search on Python Software Foundation).