March 11th, 2010

Go to page: Prev 1 2 3 4 5 6 7 8 ... 42 43 44 Next

Just like starting over, part 1


We won’t try to cover everything all at once. We’ll probably jump around a bit lot.

What do you know, what do you not know?

I’m keeping the old stuff. I’m not getting rid of it. There’s been this guilt with me for years that somehow my packrat impulse is the culprit that stifles my creative growth in the present. I don’t even know who told me to feel that way, or if I invented the guilt myself. But I’m keeping the old music, the old ideas, etc., because I like them for what they are. I’ve always liked most of the material itself, in some way or another, despite having grown past some aspects of it; if anything, it’s the container or the packaging of the catalog that I’ve never been happy with. And what I don’t know, and have struggled for years to figure out, is: what should that container be?

Idea: wrap every song into its own custom-created Flash file. It can be low on graphics; it can be a single still image or some text with the lyrics or interesting trivia about the song. Make it easy for people to play one at random, instead of having to choose based on unfamiliar titles. The point is, it’s something to experience in an immediate way while online. You can put music online already, but I still buy into the old cliché that people need something to look at, otherwise it’s like you’re asking them to do you a favor by listening. Time is money, chop chop.

What about the blogging thing? Blogging is love-hate. How to keep the love and lose the hate? Look at this post. It has to have a title on it. It’s like I’m “presenting” something to you, so I can’t feel free to just think out loud. This post has to “represent” me. Could I post here about what I did yesterday? Yesterday I found a site where some guy wrote an incredibly long and detailed analysis of the Beatles’ Revolution 9. Since the domain in the guy’s email address is up for sale, and the pages are hosted on Geocities, I thought there might be a good chance this intriguing thing would disappear, so I saved all the pages and carefully arranged them into a PDF file, going page by page to make sure none of his ASCII graphics were split between pages, and fixing a few spelling errors when I saw them.

But if I post about it in a BLOG POST, then it’s like this thing I did is supposed to be representational of WHO I AM. If someone asks, “who is Keith Handy?”, do I want the answer to be, “well, according to this site, he’s the guy who spent several hours compiling some other guy’s Beatles website into a PDF file”?

So what I want is some kind of a feed that’s a cross between Twitter and Blogging, or the full spectrum in-between. Somewhere where I feel like it’s OK to write a one-second comment on the weather, and equally OK to write a ten-paragraph rant about the creative spirit.

I also want to not feel like I have to write a nice “closing” each time I publish, like this sentence I’m struggling to force out right now.

R.I.P. - this blog?


Is it over? Was it over a year ago or more?

Maybe it’s all, like, you know, some kind of “those who can, do, and those who can’t, blog about it” thing. And this blog has failed. And there are actual blogs about… well, there’s a blog actually called FAIL BLOG, and it’s a very successful blog. So it’s not a good example. But this blog is literally a failed blog.

It’s not that I couldn’t have done better, written more consistently, zeroed in on a topic, promoted it, etc… but there are people who are born to blog, and I’m only born to once in a while have a lot to say and need somewhere to say it.

This blog hasn’t really helped me to connect with anyone in any way. So I’m thinking about making it private. I wouldn’t change the settings, I’d still leave it open and accessible and searchable, but just declare that it’s “for me”, and stop even looking at the embarrassing Google Analytics reports. I could even stop allowing comments, but then I’d be tricking myself into thinking people were trying to leave comments, instead of actually getting myself to stop caring.

The rule would be, I’d only post here if I absolutely positively was not hoping or trying to start any kind of a two-way dialogue. If there’s even the tiniest hope in me that someone would maybe respond to something, then it should be posted elsewhere, possibly on one of the “social networking” sites where professional developers actually get paid to ensure that their site functions in a SOCIAL way. It’s not my job to make my own fucking website a “social” thing.

The problem is, I’m not sure there’s anything I ever do say or write that I’m not secretly hoping people won’t acknowledge in some way. I’m not comfortable with “zero comments”. But I have to become comfortable with it. I have to perform to the empty theater, just as I’ve had to draw on blank sheets of paper and put sound on virgin tape. I’ve chosen to walk the artist’s path, for real, and in the act of doing so, I face the abyss. I stop wriggling around and whining, and just say, “hello, abyss”, and listen to the sound of my own voice echoing, and meditate on it. If I have to go through all five fucking stages of mourning, I go through all five, and I don’t stop until I’ve completed them all, and made peace with them all.

Denial: Lots of people will eventually show up, just hang in there.

Anger: You used to follow me and now you don’t; you’ve betrayed me. Fuck you.

Bargaining: What do I need to do to make it more interesting and win your attention back?

Depression: Nobody is interested. Nobody cares.

Acceptance: How can I start over? What would be a more constructive use of this space?

It’s just a blog… it’s just a blog… it’s just a blog… it’s just a blog… it’s just a blog…

Suspension of disbelief vs. being “safe”


The term “Suspension of disbelief” usually refers to our forgiveness of contradictions and inconsistencies in fiction. We generally don’t use it when talking about abstract or experience-oriented art, such as music or animation (i.e. the animation itself, not the story). I think we should be talking about it — the audience’s willingness to experience the art, and not just see or hear it — even if we need a different term for it. As a musician for 25+ years, I haven’t come across a better term yet, so I’m sticking with SoD for now.

Without SoD, you may still get positive feedback on your work, all from people telling you that you “did a great job” and “have a lot of talent”… but never from anyone saying they were moved or affected.

SoD is audience-side, but there still needs to be an artist-side effort to facilitate the illusion for the audience. (This doesn’t necessarily mean making everything as realistic as possible; in fact, it can mean the exact opposite.)

So what responsibility does the artist have here? Here’s a tweet of mine from December:

I think most failure to enable an audience’s suspension of disbelief is not due to sloppy execution; it’s due to being too “safe”.

Safe: the guitarist who plays entirely with his fingers, and emotes nothing with his body or face. If you’re distant from your own music, then who the hell’s going to feel close to it? Safe: a recording engineer who worries more about the noise floor than the intensity or originality of the sound. Safe: the shoestring filmmaker who splurges on the best camera and lighting, but settles for passionless acting, as long as everyone gets their lines right. Safe: anyone who devotes most of his mental energy to the avoidance of mistakes. Safety is the enemy of imagination, and a lack of imagination on your own end means the SoD won’t happen won’t happen for anyone else either. If you want the audience to have an engrossing experience, you have to allow yourself to be engrossed in that experience first, which may look to some like temporary insanity.

This would seem to be an easy thing to explain to people, but sometimes it comes into conflict with deeply held values… as a result, it can fall on deaf ears. In this case you have to acknowledge that someone won’t be coming along on your journey, and just move on. Don’t let these relationships bleed you of your energy. You’ve got moving and affecting to do; get on with it.

Inner worlds and mythology


Lying on my back on the floor, headphones on, listening to a podcast in the wee hours of a weekend morning. Fully awake, yet firmly planted in the familiar inner world where this whole thing started. Not caring whether music is my music or somebody else’s music, since the distinction between “me” and “someone else” is a temporary illusion.

My attention shifts to frustration. I have the urge to share this experience, but I’ve learned that most people in this world criticize and judge in a binary, pass-or-fail way, uncomfortable with any art teetering on the fence between ethereal and half-baked. I want to put some nod to “Careful With That Axe, Eugene” in my Facebook status, but then I remember how flat and two-dimensional it will look to anyone not absorbed in the song.

I realize I’m not actually alone, by virtue of the fact that this is a podcast (and a popular one). But then I also remember how futile it is to seek meaningful human contact in the podcaster’s comments; people tend to have either a capacity to fully lose themselves in music, or the ability to write coherently — rarely both.

I realize one of the things keeping this (or any) music alive today is the mythology surrounding it. Personally, my experience of it is full without laser shows, without Wizard of Oz synchronizations, without smoking pot or adding “Shine On” to my email signature. My journey into the music is no less engrossing for having a realistic, first-hand understanding of the mundane process that goes into polishing a crude idea into a song.

For those who don’t have that experience or understanding, perhaps the mythology fills that gap. Much as I rant against it, why should I? Why fight mythology? It’s as pointless as fighting bootlegging, and has about the same effect.

I can’t think of any immediate practical use for this wisdom, so rather than trying to hammer it into the wrong-shaped hole, I’ll just let it simmer on the back brain for now.

Simplicity and complexity


It’s a treat to occasionally read something that’s at the exact right level for me. Not talking about intelligence vs. stupidity — I’m talking about where I am in a learning curve. Everything we read starts with some assumption about what we already know, and it’s nice when this assumption gets it exactly right… starting slightly lower, so that we get a quick recap of the basics, can nod our heads in agreement, and then be ready to absorb the next thing.

But, I also like to read things that are not at my level, and I will tell you why.

If something is at too low of a level — let’s say a book about the basics of using a computer — I find it fascinating to see how this information is communicated to people who don’t have that basic understanding. It’s interesting to be reminded of what knowledge I take for granted, and even think of it in a different way. And it’s also helpful to get some perspective on what goes on in the mind of a person who doesn’t understand computers, so that I might learn to communicate better with those people.

If something is at too high of a level, I still can get something out of it. Reading stuff that’s too advanced helps to plant terms in my head. It’s very much like planting seeds; if I see terms frequently enough, I get a sense of them being important somehow. And then when the time has finally come to learn the meaning of that term, there is that much more satisfaction to it, and probably more retention. Off the top of my head, I’m having trouble thinking of a current example of this, but for a past example: I’m sure I heard/read the phrase “object oriented” a zillion times before ever writing my first class. The more instances there were of me hearing/reading “object oriented” and not having a clue what it meant, the more neurons were primed to joyfully fire off once the lightbulb switched on. In other words, the more I “tortured myself” by exposing myself to the unfamiliar term, the more exciting it was to finally learn it.

When I write posts like my previous one, the reactions tend to be along the lines of “I don’t understand a word of that”. And so it might help for me to try to tie my thoughts above to your experience reading this blog… which kind of centers around whatever creative breakthrough I’m having, or trying to have, at any given moment, and then occasionally goes way off topic so I can talk about my pets, or drop my two cents into the big political conversation.

I definitely don’t write in a way that I expect any reader to completely understand every word. That might seem off-putting, as if I don’t care whether you enjoy reading this or not, but that’s absolutely not the case here! I do try to write in a way that at least amuses you between the parts that make you scratch your head, and hopefully paints some more general overview of why I’m excited about what I’m doing. You might not understand what C++ code has to do with processing video images, but hopefully you can pick up on the feeling of freedom and liberation I get from building my own tools. You might not know what a sharp-ninth chord is, but hopefully you pick up on the idea that it’s a unique sound — and ultimately a unique feeling — that you can’t get from a straight major or minor chord. (Reading about a chord is one thing… but if you hear an unusual chord and like it, there’s no excuse for not finding out what it is so you can use it in your own songs!)

While I’m apparently very good at conveying how “complex” my interests are, I might be terrible at conveying how simple they also are, at least in my head — the point where an idea comes together and finally makes sense, and becomes useful and powerful. Complexity is just a middle stage in the development of a good idea:

1. SIMPLE (but unoriginal)
2. COMPLEX
3. SIMPLE (and original)

So if it still appears complex, then from your standpoint, I’m just not done yet. But from my standpoint, I’ve carved out this little section of code where I can do much more powerful things with the images, with very few lines of code. (And besides, I’m the one that’s going to be using the darn thing.) So, the point of my last post was, hey, I just created this tool that will help to make future toolbuilding quicker and more powerful. And I’m excited about it, and want to share that excitement.

I am NOT evangelizing that this is the path for you. I happen to have been experimenting with C++ code for audio and image manipulation since the turn of the century, was drawn into it on an emotional level (”there’s power in this stuff, I’m determined to sort it all out”, etc.), and I’ve created an ever-expanding arsenal of building blocks over that time. If you jumped into it cold, without patience or motivation — especially motivation — you would be dead stuck. The point for you is to take it as inspiration for some way in which you can create some kind of thing, system, or procedure that you will be able to benefit from, in a way that makes sense to you.

I have no idea what that would be, but I hope you make that connection.

Home-brewed “color spacing”


Note: apparently, not all the code below displays correctly via RSS.

Here’s a home-brewed way to get some of those expensive looking “color aware” effects.

In addition to the original hue/saturation/brightness components, I create six new variables each for hue, saturation, and value (brightness), plus six “weight” values, each corresponding with one of the six colors of a preschooler’s rainbow, ROYGBV (red, orange, yellow, green, blue — fuck “indigo”, but if you wanted me to take it seriously as a color, you should have taught it to me sooner — and violet, even though we called it “purple”):

double h, hueR, hueO, hueY, hueG, hueB, hueV;
double s, satR, satO, satY, satG, satB, satV;
double v, valR, valO, valY, valG, valB, valV;
double wR, wO, wY, wG, wB, wV;

Then at each pixel, you set up the “weight” values depending on what it’s closest to:

wR = wO = wY = wG = wB = wV = 0.0;
if (h >= 0 && h < = 21 ){wO = h /21.0; wR = 1.0 - wO;}
if (h > 21 && h < = 42 ){wY = (h - 21.0 )/21.0; wO = 1.0 - wY;}
if (h > 42 && h < = 85 ){wG = (h - 42.0 )/43.0; wY = 1.0 - wG;}
if (h > 85 && h < = 170){wB = (h - 85.0 )/85.0; wG = 1.0 - wB;}
if (h > 170 && h < = 212){wV = (h - 170.0)/42.0; wB = 1.0 - wV;}
if (h > 212 && h < = 255){wR = (h - 212.0)/43.0; wV = 1.0 - wR;}

Notice that it’s not just selecting one color and going with that; if it’s halfway between red and orange, the red weight would be 0.5, the orange weight would be 0.5, and all the other weights would be zero. After this point in the code, you’re now free to experiment with each value separately. For example, if you want to kill all saturation for the yellow areas, and just turn them grayscale, you would code it this way:

satY = 0;

Similarly, if I want to pump the heck out of the blue areas, I put a line like this:

satB *= 2;

(That’s C++ for “multiply by two”.)

Additionally, I “limit” the red saturation, so that it stays the same up to a point, but doesn’t go any higher; so that skin still looks the same, but bright red ribbons are muted:

if (satR > 96.0) satR = 96;

This example only plays with saturation. I could also mess around with brightness, contrast, etc. in the same way. After this designated “fun sandbox” section is the code that puts together the final values, using the “weight” values:

h = wR*hueR + wO*hueO + wY*hueY + wG*hueG + wB*hueB + wV*hueV;
s = wR*satR + wO*satO + wY*satY + wG*satG + wB*satB + wV*satV;
v = wR*valR + wO*valO + wY*valY + wG*valG + wB*valB + wV*valV;
setpixel(x, y, h, s, v);

I’m not sure exactly how this stacks up against the “color spacing” technology the big companies charge lots of money for, since like I said, it’s based on a Crayola-level color awareness. That considered though, it’s free in both senses of the word… free as in no expensive software to pay for, and free as in freedom to experiment on any of those 18 values with all kinds of math and logic before reducing them back to the original three components.

Much thanks to Darel Rex Finley, since I’m now using his HSP Color Model code to switch the images back and forth between RGB mode and HSP mode. “P” in this case is “perceived brightness”, and more psychovisually accurate than standard “V” or “L” values, but serves the same purpose. Check out his clear and well-illustrated HSP page for an explanation of the difference.

Go to page: Prev 1 2 3 4 5 6 7 8 ... 42 43 44 Next

Imhotep theme designed by Chris Lin (and then bastardized by the webmaster). Proudly powered by Wordpress.
XHTML | CSS | RSS | Comments RSS