Teach Me to Fish

Dec 15, 2019 | Learning, Technical & How-To

Just Give Me a Logical Reason!

One of my first jobs out of college was to code selection statements that would automate the printing of just a few pages or sections of much larger reports to distribute to individual recipients. This involved using Boolean search operators, much like what you might use in Google, Bing, or Duck Duck Go today, to define specific text located in precise locations on the printed page.

For some strange reason, I enjoyed this. I enjoyed finding needles in haystacks, and made it a personal challenge to sift through as little hay as possible in order to find the needles with gold tips and hooked ends. At one point, I had a complex report defined in a single selection statement that probably ran on for five or six lines. I had parenthetically grouped and nested sets of search criteria and operators – it was a lengthy but precise statement of exactly what I wanted to include in the report, and I was inordinately proud of it. But it didn’t run. It didn’t give any error messages, either. It simply produced nothing.

Where Did That Quote Come From?

“Give a man a fish, and you feed him for a day. Teach him to fish, and you feed him for a lifetime.”

If you thought this was a Biblical proverb, you’d be in good company, but incorrect. The fishing allegory is most likely attributable to Anne Isabella Thackeray Ritchie,  the daughter of the prominent writer William Makepeace Thackeray. The same general idea was expressed by the 12th-century philosopher Maimonides, who wrote about eight degrees in the duty of charity. See Quote Investigator for more details and source citations.

 

The Occasional Oops!

If you are one of the founding members, you probably got an email, yesterday, with a now-broken link. One or two of you hit that link before I deleted it (or, technically, changed it without benefit of a redirect). That’s because I forgot the cardinal rule: No post may be published before its time!

For my readers who don’t blog, this means:

  • Write the post.
  • Give the post a catchy title and a featured image. If you wonder why some of the featured images here don’t exactly go with the post, it’s because I prefer to create my own. That way, I know I’m not violating anyone else’s copyright. Occasionally, I may use others’ images if they are clearly marked with a Creative Commons license or I have written permission from the photographer or artist.
  • Check that the title and permalink (e.g., the part that says “teach-me-to-fish” right now, in your browser address bar) go together.
  • Choose a Category for the post. Categories are what you see in the menu bar and its subsections.
  • Add a few tags to help people find the post. Tags are like index entries. You can just use the Search function, but tags might give you more conceptual information that isn’t explicitly part of the text within a post.
  • Craft an Excerpt. That’s the little descriptive blurb you see in search engine results and on the front page of this site. If there is no Excerpt, WordPress is set to use the first few words of the post in place of one. Unless you’ve fallen down the rabbit hole to arrive here, you know that the first few words of any post here may not provide the best description of what to expect.
  • Preview the thing to ensure that formatting is correct.

I forgot a step or two, in my haste to respond to yesterday’s poetry challenge from Raven Darkly. I did not mean to drop you into a black hole, but some random numbered permalink would not do, and I decided a dragon was a better Shadowbird than a white heron.

 

Update on Theme Customization

As mentioned in my first post, I’m using Elegant Themes‘ Divi and the Divi Builder, which is a brand new experience offering many new challenges. As predicted, I broke the blog on Wednesday, but was traveling. I could not fix it and threw caution to the wind: I asked for help.

Back in 2012, I won a Lifetime Membership to Elegant Themes. I loved their cleanly coded, easy to use, easy to customize themes. I moved away from those in 2016, mainly because they appeared to be phasing out all the themes I loved and going all in on their theme and builder combination they called, “Divi,” which I had tried and, frankly, hated. I paid for a different premium theme, called “Fullby,” which I loved, but chose to move away from for two reasons: The developer was not responsive to support requests, and I could see that it was not likely to keep up with the inevitable changes to WordPress–namely, the dreaded Gutenberg block editor. Divi was before its time. I fought that block editor as long as I could, while some raved about how wonderful it was and others wrote plug-ins to disable it and restore lost features of a bygone era. Mainly, I fought it because it did not allow for the easy fine-tuning of alignment between text and graphics. I was ready to hand-code each post in HTML if I had to, just to get those elements to align.

And then I thought, “Fine, I have a Lifetime membership to Elegant Themes, and it seems a shame to waste it. Let’s give Divi another go. I have vacation, plenty of time to waste. I can do this.”

I am grudgingly ready to admit that Divi and I are starting, mostly, to get along. I still half expect it to eat my posts (the main reason I despised it, early on, was that I’d tried it – then switched to a different theme – then switched back, and all my posts were gone).

But this weekend, I broke my blog. I entered a plea for help in Elegant Themes’ chat support. And waited. Nothing happened. I went to bed. In the morning, I had a lovely email from Abd, asking me to enable the support and admin features of Divi. At first I balked: Give someone else admin privileges on my blog? I don’t think so

Then, “Why not? What are they going to do, delete it?” There was nothing here to delete. There are no members but me, and admin me has access to pretty much nothing. So I enabled Support and Admin privileges. Next thing I know, Abd and Vojin from Elegant Themes had gone to work fixing my world.

At first, I thought I broke my blog, but the real problem was not my messing around in the style.css file, trying to change the color of elements not accessible via the Customizer. The real problem was another plug-in.

Instead of the usual, “It’s some crappy plug-in you’re using. Disable them all, then re-enable one at a time to figure it out on your own,” they told me what was wrong and they wrote some code in the Divi theme to work around it. I didn’t have to disable the crappy plug-in. Sweeet!

Then, I asked Vojin how to change the color of the elements I was trying to change. He asked me what color I wanted. I explained that I’d rather understand what I needed to do–that I wanted him to teach me how to fish, not throw me a mackerel and feed me for a day. He got it, and did both, providing a little snippet of .css code to do what I’d wanted.

So now I am back to being a huge fan of Elegant Themes–yes, and Divi–because of their expert and kind support staff. It usually does come down to the people, doesn’t it? I’m willing to put up with a little technical annoyance if the support staff goes above and beyond. It’s why I’ve been a T-Mobile customer since back before their coverage was better than AT&T’s, and why I’ve stayed with them for nearly a decade. And now it’s why I recommend Elegant Themes’ Lifetime Membership, as well.

Oh, and the more I work with Divi, the less “technical annoyance” I’m encountering. It’s just a very different way of working. And now I know that if I get stuck, I am not stuck without the help of some very kind and knowledgeable people.

Craving Answers

The “real systems engineers” and the “real programmers” (I did not consider myself one, at the time) reviewed my logic and syntax and could find no flaws in it. “Just break it down into two or three separate statements,” they suggested.

“Why?” I asked, hoping to understand and learn.

They shrugged. “Because what you’re doing isn’t working? Because if you simplify it, it might?” They really couldn’t – or wouldn’t – give me the logical answer I craved, so I chafed at the idea, but finally relented as there didn’t seem to be any other alternative.

It worked, but I was unsatisfied. I was still telling this story, ten years later, as an example of unsatisfied thirst for knowledge. Until one day, a man overheard me and started laughing as he began to stroll over to where I stood with a few colleagues. “I’ll bet I know what the problem was,” he said.

“Oh?” I was skeptical, but after ten years, I really hoped that he did.

“I used to work for IBM,” he said, asking if I knew whether the mainframe computer’s operating system was a particular version. I wasn’t sure, but it seemed likely. “That operating system only supported nine levels of nested parentheses. I’ll bet you used more than that.”

I could’ve kissed a stranger, that day. “I’m sure I did,” I said. “Thank you for finally giving me a straight answer that makes sense.”

Remember that when children, friends, or colleagues ask, “Why?” it may be easier, and certainly kinder, in the long run, to teach them than to keep doing a thing for them, or worse – ignoring them. I am a big believer in learning to fish, rather than simply hoping for someone to share their catch, and I have appreciated those who took the time to teach me.

Latest posts by Holly Jahangiri (see all)

Let’s Connect!

Subscribe by Email (WordPress)

Recommended method: Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Subscribe by Email (FeedBurner)

Enter your email address:

Delivered by FeedBurner

 

Troubleshoot: Subscribe by Email Problems

Post Categories

%d bloggers like this: