Skip to content

The Chicago Pedway: Descent and Return

The GPS guided me into the dim, twisting tunnels of Lower Wacker Drive, where its signal promptly cut out. Lower Wacker is a realm of eternal night. The walls block the lake-sense that tells Chicagoans which direction is east, and there is no skyline or architecture to orient them. The street signs, where they exist, are easy to miss. The only landmarks — small placards indicating which building is above a stretch of concrete ceiling — whiz by before they register. (You don’t slow down, lest you anger the dark racers always on your rear bumper.) There’s an economy of sorts, down here. Homeless men are the rangers and guards in this urban cavern. They sit at intersections, and for a couple of bucks, will point lost drivers to a ramp ascending back into daylight. They’ll also watch your car if you park in one of the sunless lots. Keeping calm, I watched for light at the intersections, where I could turn and exit to the familiar, sunlit surface.

IMG_20171230_103129847Lower Wacker Drive is an unchecked box on my list of Chicagoan credentials. Coincidentally, I was driving downtown to meet my friend Sam at the Fairmont Hotel for a tour of another open item on my list: the Chicago Loop Pedway. The Pedway is a system of covered passages downtown, through which the savvy adventurer can navigate much of the Loop, protected from the rain or cold. But the Pedway can be as twisty a maze as Lower Wacker, and both are rightly feared. No few unwitting wanderers have lost their way, down below. But Sam’s old improv friend, Margaret Hicks (who operates as Chicago Elevated Tours), would play Virgil to our Dante. At last I would face my fear, and inch closer to being an Expert Chicagoan.

We began our descent from the lower level of the Fairmont Hotel. Other cities with extreme weather have pedways, but Chicago’s is different because it isn’t a centrally planned or managed entity. It’s a network of basements, voluntarily connected by their respective owners. It’s an organic hodgepodge, more grown than constructed, more evolved than designed. You can tell when you’re moving from the territory of one hotel or office to the next. The carpets, lighting, decor, and smells all change. Even the signage and wayfinder markers are inconsistent. The connections are sometimes ad-hoc. It brings to mind analogous concepts in computers, from the architecture of the internet, to the “Cathedral and Bazaar” model of open source software. Loosely coupled components. The User Experience is all over the place. It’s part of what makes it confusing, but also your greatest ally when navigating. There exists a map, but it’s not particularly helpful.

IMG_20171230_113107325Margaret cited an improv maxim: “If it feels wrong, do it more.” Follow that unlikely path, even if you’re certain it’s not “official.” Embrace the chaos. It will give you what you need, if not always what you want. Open yourself to the Pedway, and the Pedway will open itself to you. She clearly loves this place. She once spent a week, never going outside, just to see if she could. She had access to dining, movies, bars, and all sorts of professional services. And, of course, a hotel room to stay in. We walked past a random gallery of stained glass, an exact replica of the front door of the Chicago Cultural Center, a swimming pool behind glass. We walked the length of an underground train platform. We climbed up into the middle of Macy’s (formerly Marshall Field’s) to view a priceless mosaic ceiling dome. The Pedway had its seedy stretches too, where homeless people slept and the smell of urine was unavoidable. Margaret calls the Pedway Chicago’s “78th neighborhood.” At the end of the tour, she gave us all cards with her number, in case we ever get lost. Others have used the number.
IMG_20171230_113738867
Margaret left us under Block 37, where a passage connects the Blue and Red Line trains. Sam and I decided to find our way back to the Fairmont on our own. We made it, with only a few false turns. Our return journey awakened the memory of how I used to navigate unfamiliar terrain in the Before Times, when there was no GPS lady to tell me where to turn. My brain was engaged. Active. I used my visual memory to recreate the angles from which I viewed landmarks on the first trip. I was in the moment, processing my surroundings in a way I usually don’t. It was exciting. I had switched off autopilot. There were plenty of areas I already knew well — you can’t work in the Loop for more than a decade without some familiarity. But I was building the connections in my mind, the big picture. When Sam and I emerged from the Fairmont, it was with an understanding and a boldness that digital gadgets couldn’t provide. Those covert passages hold no fears for me now. When the zombie apocalypse breaks out, I have my secret escape routes. This city is a little more mine.

Next stop: Lower Wacker Drive.

Advertisements

The Last Jedi: The Kids Are Alright

[SPOILERS for Star Wars VIII: The Last Jedi]

“This is not going to go the way you think.”

Luke Skywalker said this to Rey, but he was talking to us. And by “us” I mean the Generation X folks who saw the original trilogy in the theater a zillion times, daydreamed about it endlessly, and made Star Wars a cultural fixture. He’ll forgive our skepticism. The new movies are packed with echoes of scenes we know by heart. We’ve seen this before. This is a Ring Cycle, the pattern is repeating. Until it breaks free. Episode VIII’s message is that the past is baggage, and it’s time to burn it down. Generation X had its own trilogies. Star Wars belongs to the kids now. It’s bittersweet, but it’s a good thing. That’s how passing the torch works.

Leia knows. The new kids, inspired by their elders, want to charge head-first into danger to pull off daring capers. But the war against the First Order isn’t like the fight against the blind stormtroopers of the Empire. For every mistake, entire fleets die. Every victory is Pyrrhic. Every significant blow is a suicide mission. The cost of repeating the past is unthinkable. Leia needs Poe Dameron to be less of a Han Solo, and more of a, well, General Leia.

Luke gets it. He didn’t fly off to the ancient, uncharted Jedi temple to unearth some secret knowledge of the true nature of the Force. He left because he had failed the next generation. Luke is the dad who suddenly realizes he doesn’t know what the hell he’s doing. He was trained by the last remnants of the previous generation to be something he barely understood, an acolyte of a religion of which he was the sole surviving practitioner. Trying to rebuild the Jedi order, he feared he was doing more harm than good. His fears were justified. The old orthodoxies don’t stand up to modern scrutiny. Like Old Ben before him, Luke realizes that the best he can do for the next generation is to give his life to buy them time.

Supreme Leader Snoke is the ugly face of the past, building the First Order in the spitting image of the Empire. Is he really Emperor Palpatine, who survived his fall or cloned himself anew? Probably. But it doesn’t matter. This isn’t Snoke’s story any more than it was Luke’s. Snoke is dead and chopped to pieces in only the second act of the trilogy, because this time, Kylo’s redemption arc is more complicated than Vader’s dying act of love.

Kylo Ren is a man nearly crushed by the legacy of his grandfather. He wore a ridiculous helmet to honor it. Uncle Luke feared him for it. Snoke shamed him for not living up to it. He’s the last scion of an immaculate conception by a Sith lord, a living avatar of the Force. So many expectations. Kylo hoped to free himself of the past by literally destroying it: taking a new name, nearly murdering his mother and uncle, and murdering his father and master. But even when he does, he remains trapped in a role made for him, not by him.

And what is the secret lineage that defines Rey’s destiny? Who is she, and why is she so powerful? Wrong questions, Generation Xers. This is the new Star Wars, breaking free from the old. Anakin Skywalker’s bloodline may have been born of Dark Side voodoo, but in the new world, the Force isn’t the private domain of a couple of elite warring sects. The Force is in everyone, and can awaken in an abandoned girl with no special lineage, a young rebel who gives her life to drop bombs on a dreadnought, or an indentured boy sweeping stables. This Force isn’t a divided binary of Light and Dark, it’s a complexity, like the souls of people. The new Star Wars isn’t about Light vs. Dark, it’s about the future vs. the past. Rey doesn’t need an old Jedi Master to shape her — even if she wants him to. She is in the vanguard of the New Order, rising up everywhere against Kylo’s First Order.

In my generation’s Star Wars, the Rebellion fought to bring back the glory days of the Old Republic. It was motivated by looking backwards. Even the prequels looked to an ancient prophecy. This generation’s trilogy rejects that thinking. The new Rebellion, much like Disney’s Star Wars franchise, is fighting to become something completely new, on its own terms. This new generation embraces diversity. It distrusts binaries and understands moral complexity. It trusts itself. It harnesses the power of both anger and love. It opposes oligarchs as well as fascists. It listens to, but doesn’t always trust, anyone over 30. And it’s going to do fine.

The older generation just has to move out of the way.

 

The Evolution of the Content Engine (Case Study: Cat Pictures)

  1. Cat pictures” returns a list of popular web pages featuring the words “cat” and “pictures.
  2. Cat pictures” returns a list of cat pictures from websites like the ones you frequent.
  3. Cat pictures” returns pictures auto-curated to your taste in cats, including ones you’ve taken.
  4. Cat pictures” generates pictures of customized cats based on others you’ve clicked in the past.
  5. Cat pictures” generates interactive cat simulations tailored to your tastes.
  6. Cat pictures” 3-D prints photorealistic models of your favorite simulated cats.
  7. Cat pictures” 3-D prints interactive models of simulated cats to suit your detected mood.
  8. Cat pictures” 3-D prints biological cats to your specifications, with tutorials for their care.
  9. Cat pictures” grants 3 wishes for cats, excluding wishes for more cat wishes.
  10. Cat pictures” grants unlimited wishes for cats.

We See You When You’re Sleeping

Imagine your family tucked warm in their beds on Christmas Eve. The lights on the tree twinkle, cookies and milk wait on the table, and white snowflakes sparkle in the silent night. No last-minute shopping, no fighting crowds at the mall. Your family awakens to the perfect gifts under the tree. And the cookies and milk? Gone, with a note saying “Thank you!”

Relive the childhood wonder of Christmas with Amazon’s North Pole®. North Pole uses the latest Artificial Intelligence (and a touch of elfin magic) through the Echo® devices already in your home. Enable North Pole on all your devices and start an Amazon Christmas List™. Add items through the web, the app, or by speaking to Alexa®. North Pole scans your email, texts, social media, and conversations to suggest gifts your family will love. Your Echo Look® guarantees a perfect fit and style. The results may surprise you.

Set budgets for each family member, and enable Amazon’s always-on Checking It Twice™ (Beta) AI to compute their “naughty or nice” scores for the year, and adjust budgets accordingly. Keep your family on their best behavior with alerts from Santa. And when Christmas Eve finally arrives, Santa’s reindeer drones wait until you’re sleeping (Fitbit or compatible sleep monitor required), and use Amazon Key® to deliver your gifts right under the tree. This year, believe in Christmas again.

PLEASE NOTE: Amazon Krampus® is discontinued. If the Krampus enters your home, please alert our 24/7 customer service and your local authorities.

Sucker Punch

The first truly cold day in Chicago is a sucker punch. Every summer you forget it’s coming, and in the fall, when it shows up, you smirk at it like a schoolyard runt with a chip on his shoulder, brushing him aside until he grabs you by the coat, turns you around, and socks you in the gut like he’s been practicing that move all summer on a punching bag his parents got him in a last ditch effort to vent his bottled-up rage. But he was training. He puts his hips into that punch. And you’re on your ass, the wind knocked out of you, staring up at him with your mouth a silent O, more shocked than angry or afraid. Every day of fall flashes through your mind at once: short sleeves yielding to sweatshirts, coats dragged out of the basement, the chill bedroom air when you climb out from the covers, driving you back under like the groundhog seeing his shadow. The signs were all there. But you just threw on a coat this morning without buttoning it — no hat, gloves, or scarf — because you know Chicago, and you know cold, and you’ve survived it every year and this year will be no different. But the cold knows you too. And he keeps coming back, harder and fiercer, every year, because he’s persistent and he knows that one day when he knocks you down, you won’t get up.

NLP and The Wheel Of Time – Part 1

I love epic fantasy stories. All the characters, plot lines, world-building, and the little details that foreshadow big developments — I devour them in multiple readings. I also have some time to play with the Google Cloud Platform’s Natural Language API. So I decided to see what analysis I could do with that API on one of the most voluminous and detailed epic fantasies I’ve read: Robert Jordan’s The Wheel Of Time series.

I’m going to blog my efforts, in case something interesting or useful shakes out. I’m using this opportunity to teach myself Python as I go, since that language is popular in the A.I. work I’ve seen. So there will probably be some discoveries (and horrendous examples of code) along the way.

My rough plan has the following milestones:

  1. Get the Wheel Of Time books in plain text format, so the Google APIs can read them.
  2. See what the API’s sentiment analysis, entity analysis, entity-sentiment analysis, and syntactic analysis data looks like for The Wheel Of Time.
  3. Use sentiment analysis to graph the emotional arcs, in total and maybe of characters, of the story, to compare them to the “six main story arcs” discussed in this article in The Atlantic.

After that? Let’s see where the data can take me. I have some thoughts on creating a system that can answer questions about the story, and possibly expanding the training model to include labels and concepts, but I’ll focus on my first three milestones to begin with.

Part 1: Get The Wheel Of Time In Plain Text

Tor Books has the commendable policy of selling all their eBooks unlocked and DRM-free, and I already have the books on my Barnes & Noble Nook, so I started with the EPUB file format.

Unfortunately, the Nook app on Android devices hides your eBook files in a directory you can only access if you have root access to your device. I wasn’t interested in the warranty implications of going down that route. But the family Windows 10 machine has a free Nook app that downloads your eBooks. After that, it’s just a matter of searching the drive for where it put *.epub. I found them in the rather obscure directory:

C:\Users\[myuser]\AppData\Local\Packages\BarnesNoble.Nook_[somehash]\LocalState

Huzzah! Then I renamed the file as a .zip (an .epub is a .zip with a particular directory structure), and dug into the ZIP archive. Unzipped, the file looked like this:

+- META-INF
|
+- OEBPS
|    +- Images
+- mimetype

The files I’m interested in are in OEBPS\. Each chapter or section (basically, each table of contents entry has an HTML file, conveniently named for sorting by the chapter number. The markup is clean and well-formed, and the style classes are intuitive. Cleaning it would be straightforward.

Now I had to learn some Python. I was familiar with the syntax, and I was an experienced Java programmer, so most of what I had to learn could be found on StackOverflow. Unless I got fancy, it would be a 1-use script, but there are 13 books in The Wheel Of Time (including the prequel, New Spring), so it wouldn’t hurt to take a stab at maintainability. I wanted to do proper Test-Driven Development, but I was getting impatient to see progress, so I just kept tweaking-and-running until I got it to work on real data.

I envisioned three components:

  1. Something that stripped out HTML markup from a character stream and left readable plain text.
  2. Something that created a plain text file from an HTML chapter file, using the first component.
  3. Something that took an EPUB file, unzipped it, iterated through the chapter files, used the previous component to make text file equivalents, and zipped them up for transfer to Google Cloud Platform, or wherever.

Python had a built in html.parser.HTMLParser which did exactly what I needed, for the first component. After that, it was all file I/O and some ZIP manipulation, all with standard packages. The “if __name__ == “__main__” construction for an executable class seemed awkward, but otherwise I was impressed with how compact the code was.

If you want to see my ugly-but-functional beginner Python code, feel free to peek on Github.

At this point, I had The Wheel Of Time all in a ZIP of plain text files. I was ready to figure out how to use the Google Cloud Platform’s Natural Language API. That will be in my next post.

 

Might As Well Jump

 

 

 

In Frank Herbert’s Dune, the mystical Bene Gesserit sisterhood had a litany against fear.

“I must not fear.

Fear is the mind-killer.

Fear is the little-death that brings total obliteration.

I will face my fear.

I will permit it to pass over me and through me.

And when it has gone past I will turn the inner eye to see its path.

Where the fear has gone there will be nothing. Only I will remain.”

To the Bene Gesserit, what separated a human from an animal was the ability to withstand and endure terror, suborning it to one’s will. The animal reacted. The human planned.

I’ve always been a planner. I got afraid if I didn’t have a plan. So when people ask why I left my job without another in hand, I tell them “I was about to turn 46, with more years behind than ahead, and my ‘maybe someday’ list was running out of somedays.” When it’s more than a passing conversation, I quote Annie Dillard in The Writing Life: “How we spend our days is, of course, how we spend our lives. What we do with this hour and that one is what we are doing.” They commend me for having the courage to pursue my dreams, which embarrasses me because it had nothing to do with courage, or even dreams. I’m privileged to have resources to get by while I figure things out. My family is in no real danger. All I did was react to my calculus of competing fears.

They weren’t even interesting fears. On one side was the mid-life crisis of a plateaued career, mounting frustration, and a nebulous sense of being trapped. On the other were the worst-case scenarios of starting over. The boredom I knew, versus all the worse ways I could fail. Endurance versus action. I flipped the Bene Gesserit’s script, building up a fear-driven resilience to the daily grind that paid the bills and gave me a respectable job title. I could detach my emotions, do the work, and set my brain on autopilot. “The examined life is not worth living,” I’d joke. Because once examined, I’d have to respond to what I saw. And that meant I’d have to leap off the edge of that plateau, into the unknown.

Jumping was on my mind when my supervisor took me to task for not being enthusiastic and inspiring enough for my team.

In my sophomore year of college, I joined some dorm mates and went skydiving. It was a half day process of getting familiar with the equipment, practicing the sequence of actions that would get me to the ground intact, and drilling on the safety contingencies. That done, we went up in a tiny Cessna. A static line was attached from the plane to our parachutes; they would open automatically when we fell a certain distance, provided we arched our bodies in the way that kept our backs up and bellies down. One by one, we followed the steps we’d practiced.

When my turn came, our instructor called ONE, and I stood in the open door frame in the side of the plane.

TWO. I stepped out between a pair of bars under the wing; one that I could grip in my hands, and the other that supported my feet.

THREE. While holding on to the upper bar, I stepped off the lower, and hung from my hands under the wing.

FOUR. There was no getting back into the plane now, even if the shame of doing so was endurable. The only things I could do were continue to hang there, or do what I’d come to do, and just. let. go.

Confusion. The roar of wind in my ears through my helmet. A jumble of images and no idea which way was up. Then the parachute opened, and it all went quiet. Peaceful. Free. I hung in the sky supported by air, and drifted over green and brown rectangles of land. I saw a barn. A house. A Christmas tree. It was a sublime, singular experience. Only later did it hit me that I’d jumped out of an airplane. It seemed insane. They key was that I hadn’t approached it as a single action. Even at the very end, it was four steps, which I concentrated on executing as well as I could, my mind focused on that specific task and not the entire chain of events that would put me in freefall, 12,000 feet up.

Of course, underneath it all was a huge amount of faith in the entire support system. I had faith in the instructors, the pilot, the equipment handlers, the equipment itself. I had faith in the invulnerability that came with being 19 years old. More than two decades later, I had forgotten that faith, especially in myself. As my responsibilities expanded beyond myself, so did my caution. I allowed my roles to define me, and as they did, my life became less about me and more about my obligations. That’s even considered virtuous to some. They call it a work ethic. I suspect that’s what a mid-life crisis is: after years of paying dues and being responsible, the sidelined self roars back into focus, demanding satisfaction. It wants, selfishly, unapologetically. In my case, it wanted, once again, to jump.

ONE. I told my supervisor that if my attitude was such a concern, but there was nothing to do about what caused that attitude, I really had to think about why I was here.

TWO. I asked my wife how concerned she’d be if I outright quit. This week. Tomorrow. She had once quit in frustration. She said we could make it work.

THREE. I backed up and cleared away everything personal on my laptop and desk, and took a final inventory of what I’d be leaving behind. Surprisingly little, all told.

FOUR. I looked forward to the follow-up meeting with my supervisor. For the first time in a long time, I felt like I had power. I was no longer beholden, no longer obligated. A feeling of magnanimity swelled up in me. I didn’t need to vent my grievances, I simply thanked him for his candor and give my two weeks notice.

I was light, free, floating and smiling all those two weeks. My relationship to people and objects in and around the office had shifted. I moved among them, but untethered. All the weight was lifted. Ironically, I could focus better, and the magnanimous attitude buoyed me through the remaining work days. I did ask myself if I could have somehow manufactured this way of being while keeping my job, but it was a passing thought. The feeling of release, of hope for the future, couldn’t be faked. It could only come from facing down my fear, letting go, and tumbling into open air.

CODA. The following week after my last day, my phone buzzed with texts, emails, and instant messages. Several people, including my supervisor, his supervisor, and half my peers, had their jobs terminated. A part of me wished I had held out three days, for a severance package. But the better part was happy to have my instincts validated. It’s better to jump than to be pushed.

 

A Wrap-Up From My “Providence” Reading Guide

After twelve issues – or eighteen, if you count The Courtyard and Neonomicon – we come to the end of Alan Moore and Jacen Burrows’ Providence. To finally have the whole project complete at last, we can finally sit back and reflect. No more annotations, no more stressing over page borders and trying to find the one black cat, no […]

via Providence At Last — Facts in the Case of Alan Moore’s Providence

“Remember the Ifrit”

I sold my second story, and the thrill is just as strong as the first. The Cast of Wonders podcast called for Young Adult science fiction/fantasy stories that evoke a sense of wonder — in 500 words or less. And since this is a podcast, I got to hear my words read by a professional voice actor (and Hugo award-winning author), which is pretty cool.

This is a short one. I hope you enjoy “Remember the Ifrit.” (If you’re in a hurry, my story starts around the 6:00 mark on the audio.)

http://www.castofwonders.org/2017/04/episode-242-little-wonders-11-flash-fiction-contest-finalists/

Writer’s Endnotes

An image that stuck with me from childhood was from an episode of Cosmos, where Carl Sagan hypothesized what kind of life might exist in the atmosphere of a gas giant planet like Jupiter. (I’m pleased to see that the segment clip is up on YouTube.) It was only after I’d written the first draft of “Ifrit” that I realized I was stealing from Carl Sagan. Let’s call it a tribute, instead.

humpback_whale

When the family went on a whale-watching cruise off Whidbey Island in Washington State, I resolved to experience it with my daughter, directly, with no camera involved. But my resolve faltered when the Humpback we’d been following began speeding just under the water’s surface. I had gotten my phone out of my pocket and started taking a video when she breached out of the water and then fell with a tremendous SPLASH. I never got her in frame — I wanted to see it with my naked eye — but in the audio, one can hear the family shouting and whooping, and mine was the loudest voice on the boat. That cruise, and sharing the experience with my daughter, was the first thing I thought of when I began considering topics of a story with a “sense of wonder.”

My cousin-in-law did manage to take a perfect picture of the whale, so I got the direct experience and a memento. I think it’s interesting that it’s not the photo that best recalls that sense of wonder for me, but the audio. The picture represents what I saw; the audio captures how I felt. For the story, I felt that both the experience and its recollection were important, along with the curious modern impulse to interpose devices between ourselves and a wonder in hopes of being able to re-experience it at will. And, of course, the power of an experience shared was the most important of all.

 

 

After Ozymandias

ozymandias

Two thousand years hence, a traveler

In this now-antique land

Spies a statue, vast, translucent, and suffused

With sunlight, standing legs astride and arms

Akimbo in the desert sand.

And on the pedestal these words appear:

My name is Erin Riddick, Chemical Engineer;

Look on my Works, ye Seekers, and rejoice

For I found Immortality in undying Plastics!

And just under the sand, crunching and yielding

Beneath the traveler’s feet, lie the artifacts of

An ancient world, inventions and conveniences,

The fruits of man’s ingenuity outlasting

Even those of God’s.