Starting a Command Line Utility, Resistance, and Tarot Cards (GHD016)

Starting a Command Line Utility, Resistance, and Tarot Cards (GHD016)

"GHDR Goal" Wednesday was a very difficult workday. Though yesterday I had kicked-off a major code goal with some excitement, today I felt the opposite of that. I find the process of looking-up how to do sundry development tasks pretty boring. To try to liven things up, I thought I would tackle a simpler project that would scan a directory for a browser bookmark files and convert them into a clean easy-to-ready listing using NodeJS. This would be a practical introduction to utilities programming, but I put it off and off and off because BOOORING. I eventually dragged myself into starting it, but not after a complete day of fighting-off other distractions.

Those Other Distractions

I don’t know what it is about mundane tasks, but whenever I have one to do my brain reacts negatively. I might have trouble waking up (as I did this morning). I might find myself answering emails or checking Facebook over and over again. I probably fall asleep, or decided that I need to cook or clean something. Sometimes it feels like I’m catching a cold, or I get the beginnings of a headache and have to lie down. I am pretty sure that this is 100% resistance being put up by my brain because it thinks that what I’m doing is boring and unrewarding. That is because looking up arcane commands to do something that’s already been done by other people IS kind of stupid. There is nothing novel about learning how to set up a programming project directory. It’s just necessary and tedious. I know that it’s also necessary, but on days like today I find it very difficult to tell that obstinate part of my brain to shut the hell up and stop complaining. I know that it is full of crap because the very moment I do something else, all the headache and lethargy just disappears. This is what I did today BESIDES working on my personal programming project:

  • I updated my Trello board with last week’s tasks
  • I read about home soy milk machines, falling into a research rabbit hole to determine which machines, should I choose to get one someday, were the top-rated manufacturers (Joyoung is the original, Sanlinx/SoyPower is the other strong contender).
  • I fixed my Lightroom CC installation so it would directly upload pictures to Flickr, after discovering that it had that capability.
  • I looked for Javascript libraries that implemented cool Google Map integrations like this one about Taiwanese Coffeeshops.
  • I caught up on replies with the GHDR Review Community.
  • I looked for lucky purple underwear.
  • I clicked a button on Amazon that said “Explore India”, looked at a ton of hand-carved wooden boxes, then evolved an idea to create mystery boxes with old coins, sundials, leather rolled pencil carriers, sealing wax, nautical spyglasses, and simulated aged paper as part of a future LARP or ARG-style adventure.
  • I decided to try to give myself a simple Tarot card reading using the beautiful 8-bit Tarot deck.
  • I investigated the claim that DiGiorno frozen pizzas were as good as delivery (probably, given how cold a delivery pizza can get, but that’s still not saying a lot).
  • I took two naps.
  • I chatted with my sister on Facebook, gaming friends on Skype, and stayed inside all day doing nothing.

Part of the reason I was at home today was because I’m standing-by the computer in case some problem comes up with the big Work Project test. So far, there really hasn’t been anything, so I’m assuming it’s going well. Perhaps it is this feeling of being penned in both by work and by my own boring-stupid goals that made me lose my focus.

Getting to Work

Around midnight I finally had had enough of my delays and invoked some disciplinary adult thinking, telling my complaining inner child to be quiet and fade back for a while. This involves acknowledging that I’m feeling a certain way, but recognizing also that the feeling (1) does not warrant heeding because it’s just being reactionary and (2) shutting out that voice is like closing the door to a room of inner mental calm, and (3) it’s okay to just not pay attention to it for 15 minutes. Those 15 minutes is all it takes, usually, for me to get going on a project that the squishy judgmental brain thinks is boring. And once I get rolling, the analytical/curious part of my brain takes over and then things just start happening. Personally, I think a lot of people may suffer from the same problem: there’s a voice that is saying that something is bad, boring, or not worth the effort, and since it’s coming from your own thoughts it is easy to assume that it is YOU that is having them. My position is that it’s not you being your best self, and rather than let that voice control and define who you are…you can choose better. We CAN BE MORE than just reactionary bundles of nerves and fear, seeking convenient patterns to acquire easy comfort and security. It starts by tuning out that voice, or at least challenging its assumptions for 15 minutes.

But I digress! I did eventually start the utility project. The idea is to write some code that scans the contents of a directory filled with a bunch of web page shortcuts (in Mac and Windows formats) and convert a nice easy-to-read listing of what they all are. There are hundreds of them, and it’s hard to see where they go without actually clicking on them. I’d like to make the weblinks into a resource somewhere! I got the “stupid” part of the work done by setting up a repo for it, with the barest stub of code to allow me to type urldump into a command-line terminal and having it print, “hello”. It’s also set up as an NPM module, meaning that it’s theoretically easy to share and deploy with other people using NodeJS as a development tool.

GHDR Points Scored and Next Steps

Though it was kind of a terrible work day, I still managed to eke out some points.

3 I overcame resistance and did some necessary tedious work
2 I shared my work today
10 I pushed some code to a new Github repo (though it doesn’t do much)

15 points, for about an hour of code work and an hour of blogging. I am feeling pretty burned out for some reason. It could be from having this sense of having to produce-produce-produce every day on my goals, when I am not getting enough social interaction or excitement elsewhere. I’m going a little nuts from being inside all the time and being stuck with ONLY MY OWN PROJECTS. I think maybe I wish that someone else would drive for a while.

This was on my mind when I tried drawing a three-card spread as a reflection tool. The question: What was I yesterday, versus today, versus the future?

Reading 1 Since I’m not an expert reader of cards at all I looked up stuff on Wikipedia and also looked closely at the illustration; again, I’m reflecting, not doing anything mystical here, using the general interpretations of the cards as a “thinking prompt”. Sometimes it works, sometimes it doesn’t. In this case it was pretty interesting!

YESTERDAY: “The Knight of Cups is a person who is a bringer of ideas, opportunities and offers. He is constantly bored, and in constant need of stimulation, but also artistic and refined. He represents a person who is amiable, intelligent, and full of high principles, but a dreamer who can be easily persuaded or discouraged.”

TODAY: “The image on the Rider-Waite deck shows us a wealthy merchant or noble, looking out at his territory, or perhaps for his ships that have set sail. He holds the world in his hands, symbolizing power. Most often, the Two of Wands card means courage and daring. It has the message of striking out on a journey or new path.”

TOMORROW: The Five of Wands – “A posse of youths are brandishing staves (wands), as if in sport or strife. This illustrates a kind of mimic warfare and corresponds to these divinatory meanings: Imitation, as in taking part with others, for example, in a sham fight; a strenuous competition and struggle in the search for riches and fortune. It is about being alert, engaged, ready to struggle and fight for what is important; defending what you perceive as yours. Also, a card that foretells the acquisition of gold; a card of gain.”

A neat thing about Tarot, whether you believe in mystic stuff or not, is that it is a system that is designed around what humans want to know based on an observation of human nature. In that sense, it’s bound to produce some kind of relevant-seeming interpretation if you are asking questions that involve those subject matters. My next three-card drawing to figure out what I should have for lunch tomorrow didn’t go nearly as well for this reason :-) However, the next spread I did was about something bothering me about “transition” itself. It feels very much like I am in a transitional state so I tried another spread to reflect on regarding my history with transition: Dave of the Past, Dave of the Now, and Dave of the Future:

Reading 2 This one is more interesting to me, but I think I’m out of my depth now when it comes to reading these things…there’s a lot of tradition and nuanced interpretation that experienced card readers have that I don’t. Just using it like a three-panel comic strip, though, I can imagine the familiar story of battling (there’s that five of wands card again), a moment of celebration (observed it from outside as not part of the celebration), and then moving onward for distant shores yet again…Is that what I really want again, forever the outsider? Perhaps in the next 300-something days of Groundhog Day Resolutions, the answer will make itself known.

About this Article Series

For my 2016 Groundhog Day Resolutions, I'm challenging myself to make something goal-related every day from February 2nd through December 12. All the related posts (and more!) are gathered on the Challenge Page.


  1. Nacho Jordi 8 years ago

    Very nice the tarot images… I am more of an I Ching kind of guy myself, but the 8 bit pictures are very cool :)

    If I may, aren’t you spreading yourself a bit thin here? Yesterday you decided you wanted to build “something”, which you don’t know exactly what it is yet, but you want to have it working in 4 different platforms… why not cranking a minimal prototype that ticks, to get motivation and creativity flowing?

    Also imho you might be helloworlding yourself to death… Wouldn’t it be better to define first what you want to build, and then select which technology you need to learn to fit the bill best, instead of the opposite order? Of course I am not a professional programmer, maybe by toying around with programs and languages you get a feel of ‘what is possible’ that helps you get the spark of inspiration, but in my layman’s view it’s like the difference between push and pull…

  2. Author
    Dave Seah 8 years ago

    Nacho: I’ve been meaning to look into I Ching at some point to get a feel for its system. Got any interesting references to look into?

    Regarding “spreading one’s self too thin”, I can see how it might appear that I’m undermining my own goals by pursuing too many of them. I haven’t spelled out the reasons why I’m doing it this way, so it’s great that you asked!

    “Define what you want to do, set goals, build to completion over iteration” is what I think people regard as the best practice for learning how to do something. There is a “production mindset” buried in there, which I admit that I appear to be emphasizing with my “results focused” approach to goal-setting. However, it’s not the results that are important to me in the doing of things as they are the reference to help me know if I’m actually making progress or not. It’s a subtlety that I haven’t explained very well, the use of “a measurable result” not as the goal itself, but as the guiding star (that happens to produce useful stuff as a byproduct).

    I am deliberately not doing the “minimal prototype, iterate” approach because it is not particularly motivating to me. What motivates me is building a principle-based understanding of a subject as I master it, because I find that I learn much better this way. Also, the materials on the Internet are largely poor-quality “follow the recipe and learn how to make a widget to expand on it later”. Most instruction, in fact, is like this; maybe 5% of the material available is truly insightful and principles-based if I were to pull a number out of my butt. It is so bad that I feel the call to create my own learning materials so I can share them, and at the same time not fall prey to the fear of failing on my first try (which prevents me from doing).

    I think everyone gets sparked in different ways, and I think what sparks me is the approach that I indulge in to explore data, discern principles, create good references, and then build with competent collaborators. I’m a weird kind of advanced old-school programmer with a detailed yet generalized knowledge of a LOT of different aspects of computing, and this affects the approach that I’m taking! The reason I’m doing five platforms at once is NOT because I want to launch a finished product on each of them, as one might assume. My reason is that it will give me a broad overview of current application development workflow and best practices, none of which are handily summarized anywhere that I have found yet, and which I will summarize the best I can in some future posting to save other people some time!

    None of this work, though, is particularly interesting to me. It is, however, quite necessary. I could focus on one thing and try to refine it, but this is not my interest at this stage because I’m still exploring possibilities. It’s far more interesting to me to know with certainty what the general approaches are between these top five platforms and what their strengths and weaknesses are; eventually I will pick the platform I like the best for reasons beyond, “this is what everyone else is using”.

    That said, I think your observation is otherwise a very helpful and valid one in most every case! However, I’m applying my own model for developing “deep competency” rapidly using what resources I know are available: limited Internet how-to tutorials to give me a nudge in the right direction, Stack Exchange for specific “how do I” recipes, and my own highly-developed intuition about programming and user interface design. At this stage I’m just putting pieces together which is boring to me no matter what my goal is, so using ‘principle finding/documenting’ as the motivator is what works for me :)

  3. Andi 8 years ago

    Your description of your day is exactly what I’ve been having lately, but I console myself with “At least I’m being productive (if not on my creative projects that I’m for some reason avoiding). As for tarot reading, the 5 of Wands coming up twice is something to note, and I’d read it as more of dealing with hassles. The 3 of Cups I’d read as being involved in, or searching for, a community of like-minded people. The 6 of Swords says “going on a journey” to me, whether external or internal. FWIW, you might look into another 3-card layout variant: Opportunity, Challenge, Resolution; it’s been helpful for me for getting to the core of whatever my current issue is (work, relationships, health, etc.).

  4. Author
    Dave Seah 8 years ago

    Andi: Have you read The Art of Procrastination by John Perry? I’ve adopted its philosophy toward “accidental” productivity :-) Thanks for the additional insight to the cards too! I was wondering if the Five of Wands twice showing up was A Significant Thing. I’ll try that other 3-card variant of opportunity, challenge, and resolution too! Right after I post my thing for the day :D