Skip to content

Christopher James Willcock

Enjoy Kaizen

Category: Metablogging

Testing micropub via Quill.

Gallery Test

Pancakes!

Time to make a new theme for cjwillcock.ca.

I forked my Psymantic theme and made a new theme, Pancakes. I’ll install it here, then make it less ugly. It’s going to break things, but not for long I expect.

Pancakes is also free software, because software wants to be free! Enjoy.

Lastly, a screenshot of what once was, for posterity. Shout out and kudos to David Shanske, the provider of the twentysixteen-indieweb theme I have used until now.

What Am I Doing Now?

I made a little page that describes what I am doing now. It’s not what I am working on lately but is what I am doing at this moment, right now. See for yourself.

I decided not to reveal my precise location for privacy reasons. Instead, I show which watershed I am in. When away from home, this will also highlight my nearest community. It’s limited to my home Province of PEI for the moment.

I updated my user page on the IndieWeb.org wiki and added an about me page here on my blog.

Ex Lacuna or Bust

When I started writing online here again in early June ’18 I had no intention of using WordPress. Some conversation led to me using WordPress to help others that also use WordPress. I raced to the blogging that some others enjoy most and skipped the reading and implementing technical specifications that I enjoy most.

I have been hesitant to write about the details of the coding I do and about the decisions I make while developing software. I feel that very few people I know would enjoy reading that sort of content and therefore I hesitate to spend the time writing it. Instead I simply focus on the coding itself as time allows. Expanding the group of people I know and connecting with those that find these topics interesting was a primary motivator for me in coming back to blogging. Maybe ensuing conversations will make me a better developer and enable me to accomplish more. I like this possibility very much. However, in adopting the perspective of a non-developer using WordPress, I somehow fell into blogging from this perspective too.

Clearly, it’s not that WordPress is affecting me this way and I do not mean to say anything for or against this particular project or any individual that I have been chatting with on this. Rather, I see that by foregoing a journey of self-determination, making and using my own tools, I have rapidly arrived to a completely functional and reasonably well-appointed place which I was not in a hurry to be in. The journey continues to be the interesting thing for me.

I often encounter this mantra: don’t reinvent the wheel. I don’t like that there is no ‘depends on the situation’ disclaimer included there. Yes, in business, the rapidity of reaching the goal is a key quality to consider. I am not so constrained, 24×7.

Consider a farmer. The land is cleared, plowed, and planted. The crop is sown, nurtured, harvested, stored and brought to market. I expect there is more to it as well. I am not a farmer, but I expect a farmer to know these details. Consider now one who sells farm produce. I expect a produce vendor to not have detailed knowledge of farming. A junior produce vendor may hear from the senior vendors, “don’t reinvent the farm.” Makes sense if you are indeed pursuing a career in produce vending. A bit sad if the young person has the soul of a farmer, and stands at a fork in the path, where seeing clearly the farming and vending aspects coalesces to new and synergistic innovation in vendor-farmer systems.

It’s been my good fortune to secure a career which aligns with my lifelong pursuit and passion for systematization in computer programming. At work, I practice a disciplined approach to avoid costs: don’t reinvent the wheel. Outside of work, I pursue the goal of self-empowerment; of complete details as minimum viability. I study minor aspects of complex systems so that I might take personal responsibility for what I may recommend others to use, as components and dependencies. This naturally improves my day-to-day effectiveness. It is time consuming to do so, on my time, as desired!

In all the world of people in vocational specializations, when we go seeking the construction details of some modern, useful artifact, we must eventually find someone who speaks with authority, and does reference clear evidence when the question is asked: what is a wheel? I choose this vocation, software development. I think it reasonable for you to expect me to know the details.

This little funk I’m working through is all too similar to an earlier time, and to an important lesson I learned then – not to attempt to paint a picture of myself, based on what I think other people want to see of me, but instead to be genuine. It’s much easier.

Now back, back, back to knitting my own washcloth.

Microsub and the new reader evolution by an author (skippy.net)
I was an avid Google Reader user.ย  When it shut down, I started hosting my own RSS reader: first tt-rss, and later miniflux. I very much liked being able to subscribe to sites and read them at my leisure. I also appreciated not having my reading habits tracked or quantified. I had maybe two dozen f...

Trying to wrap my head around microsub, and this article resolved many parts into a whole. Kudos!

Build Better WordPress Plugins with Unit Testing

WordPress plugins, PHPUnit, WP_Mock and a few important principles by Erik Torsner (WordPress Essentials)
Some 4500 words after I decided to add a few comments and insights ... itโ€™s a good idea to consider what happens when follow a handful rather simple and obvious rules of how to write code.

Erik Torsner articulates his authoring of a production-ready-but-not-really WordPress plugin which reproduces the output of Matt Mullenweg’s commonplace Hello Dolly, while demonstrating and justifying his practical choices in software construction and testing; a wonderful example for others to consider and leverage.

Semantic Interoperability

Semantic interoperability - Wikipedia (en.wikipedia.org)
… concerned not just with the packaging of data (syntax), but the simultaneous transmission of the meaning with the data (semantics).

When elements from independent systems of semantic interoperability appear within the same document, the semantic compatibility of the independent systems is the measure of their non-interference.

HTML and CSS have very good semantic compatibility, often appearing together in the same document.

This is on my mind lately as I consider the compatibility of web application sources with microformats, while building a utility to help identify any aspects of the web application sources which interfere with the desired interoperability embodied by microformats.

I currently describe my pre-release project as: “A utility which checks webapp sources for compatibility with microformats semantics”. Based on the foregoing, I’m considering changing the description a little. At the end of the day, the work is the program that helps find the issues in the code. I’m hopeful that someone with greater comfort discussing the topic will help me to gain some confidence in how I present the program. So long as it is providing some useful and desired outcome, I’ll be working on it for awhile longer. Hopefully work to benefit more than myself!

The working title of my project is Triage. Source code is available at the link. I posted to IndieWeb chat (#wordpress) awhile back that I would publish source as soon as it does something useful. I’ve got the core command-line utility there and it will identify semantics (and syntax) issues in CSS files. It will be a little while before I have a web-based interface to make this available to a wider audience. From there I’ll look to add other languages (HTML, PHP, JavaScript).

Tweet Test – Tick Tock

This is a test of the Bridgy Publish Plugin.