Brett Code


Starting Philosophy

This is the first entry of this project... well, second if one wants to count the index. But as that is a work in progress, I will not count it.

As the preceding two sentences might indicate. I tend to be wordy. This is a place I can dump those words without interrupting the flow of a regular (more technically oriented) page.

A Regular Page

I envision a Regular Page as starting with an image, followed by the code that created the image, and lastly, by whatever extraneous words I feel compelled to include... and in large part, they will be extraneous words at that point. While truly extraneous words (that a more disciplined person -- or one who has different priorities -- might omit altogether) will be included in Philosophical entries like this one, which for the most will be devoid of code.


A few months back (almost five, at this point), I read a fair bit about PowerShell, the Windows Command Line Utility. I opened the shell once, never used it for anything much, and for the most forgot about it. I don't work on The Command Line. I work in Graphical User Interfaces (GUIs, but I've really come to hate acronyms, so for the most, I will spell things out). And so, five months later, I still hadn't found any need to explore The Command Line; and thus, any project I chose to pursue would have been artificial and devoid of any intrinsic meaning.

Then, I discovered G'MIC.


What does G'MIC stand for?

GREY'S Magic for Image Computing

I doubt I will ever spell that out again.

Why G'MIC?

Well, I had a few weeks off. And I was lying on my back, surfing the Internet. And as a project, I was collecting (discovering) Photo Effects and back engineering them.
Oh! That looks cool! How can I do that?
And all was well in the world of Algorithmic Back Engineering until I came upon an effect that was complicated enough I did not know how to do it. I could not figure out the algorithm and there was little hope that I ever would. But during my search to find something that would work the effect for me, I discovered that it was included as a one-liner in G'MIC.
Fine! I don't need to rediscover the wheel! G'MIC it is!
More importantly, there's very little glory in spending hour upon hour (or day upon day) developing a custom filter that others (in the know) are just going to assume was made with a plug-in.


The use of ffmpeg came about slightly differently. About half (or more... or less... or seriously, who knows) of the libraries (in Python that I reviewed) which convert a series of images into an animated GIF are simply wrappers around ffmpeg. So, isn't it time I started to use ffmpeg directly?

The Command Line

And there you have it:
Real Programmers work on The Command Line.
So, wasn't it time I became comfortable working on The Command Line? Especially since I now had a project to pursue?

And that's pretty much the thought pattern that went into the creation of this project, otherwise known as _Alpha_Channel_.

A Motivating Example

I like creating web pages. Pushing out content can motivate me. I am pleased with my paperjs tutorials... even if I never read them and have stopped all use of paperjs. The relevant concept simply being that my paperjs tutorials form a sort of the mental template for this project.

Only, instead of the one javascript framework, I intend to use a bunch of inter-related Command Line Utilities. And so, lumping them together into a single conceptual project makes sense to me. And if I am lumping the above outlined trio together, why not a few others (i.e. the rest of my Tool Chain), as well. But then, it's not really about those others, so many of the subsections listed on the Index Page (I'm looking at you Windows Photo) might not ever get a single entry. I mean, if truth be told, I would like to avoid using Python completely.

And that's almost all of what I have to say.

Subsection Organization

I intend to start each Index Subsection with a Philosophical Page (like this) and an Install Page (maybe in tandem with the Philosophical Page) where I state the version and why I chose that program, if nothing else. There might be a few more Generalized Philosophical Pages as I go along, which (if there are) I will put right at the top of my directory listing. And from there, I envision an alphabetical listing of commands (especially for PowerShell and G'MIC), so they are easy to find. So, although I will start with the easy one liners, if I organized the entries in chronological order, it would be (almost) impossible for anyone else to navigate the directory (assuming I make as many pages as I anticipate). And I do want my index to be navigatable by others.

Hence, why pulling all this verbiage out of the index and into another page makes a perfect sort of sense to me.

And with all that said, let us now begin the project which shall henceforth be known as _Alpha_Channel_ in earnest.

command line image manipulations

© copyright 2019 Brett Paufler