My never-ending quest to shut up

A word that I’ve noticed is frequently used to describe me is charming. I think what some have termed as charming is really a high amount of curiosity, manipulation, and attention to micro-gestures and other behavioral cues – which provide contextual data in nearly every interpersonal encounter, or at the very least, betray some position held by my conversational partner.

This data is then used to steer the conversation, amuse, or complete some other related objective.

Maybe that’s the definition of charming? I’m not going to check, but you can. Go ahead, I give you permission as WebMaster of This Blog.

I have many friends and colleagues that are extremely shy, or introverted. Some have asked how they can be more open, meet people, engage more in conversation, and the like.

While I don’t mean to belittle these goals, let me share a different world. My world. It’s a world of quickly-made friends, constant conversation with strangers, too much volunteering, and a problem saying no. 1

Most importantly, it’s a world where The Burn-out Meter is constantly running.

The Burn-out Meter isn’t a real object. If you work at a computer every day, you’re probably very familiar with the concept.

The goal is to keep the value of this meter at golf-like digits. Zero – par – is the ultimate achievement. This occurs, usually, only when I take explicit vacations. No coding, no music composition, no client work. Nothing but rest.

Any other time, this meter is at a non-zero integer value. It gradually grows, with me aware of the rising value.

Most of the things that contribute to burn-out I’ve corrected, or I’ve cut them out of my life, when possible.

Yet the biggest offender remains – the big one that controls and feeds the others: I never shut up.

If you’re an introvert, imagine with me a world with these variables changed:

  • You are now exceedingly charming; nearly every encounter, from gas stations to restaurants to parties, and nearly everything in between, usually results in conversation with someone you didn’t know before that moment.

Sounds like a TED talk moment, I know. Keep going though:

  • You make friends easily.
  • You enjoy helping others, and find yourself your mouth volunteering for things before you know what’s going on.

Aww, isn’t that sweet. No. In writing, I realize, it could seem like I’m steering this toward telling you to open up more or whatever, or that I may be bragging about some magical insight I have into the human condition.

Not the case. Here’s why – the most important variable is this:

  • You can’t turn it off. Why? I have no idea. 2
  • Ultimately, it’s because you (I) have a problem shutting your (my) big mouth.

Here’s a practical example. Let’s say you’re waiting in a queue/check-out line, at a consumer goods store. A person walks by, and you notice they have a very pleasant, familiar smell. Oh! It’s pipe tobacco and lilacs – a unique combination. Or maybe it’s a particular perfume, combined with the smell of cedar.

Why is this smell so familiar to you? You struggle to wring the reason from your mind, as the stranger gradually fades from your life. Milliseconds become centuries as you mine your thoughts for the source. Silently, in another part of your brain, you wonder why this is so fucking important a task to you.

Finally, you arrive. Your mind gifts you the source of this olfactory bliss: Your uncle’s friend, the owner of that neat little horse farm in upstate New York. Or perhaps it’s your aunt, or a former teacher, or your old cell-mate Joey.

By now, there’s only one person left in the line ahead of you. The lovely-smelling person is about twenty paces away. What do you do?

Gradually, I’ve learned that the most common thing to do is apparently to remain internal. You thank your nifty brain for giving you the memory. Maybe you call the lovely-smelling benefactor from your past, or you go purchase some pipe tobacco and lilacs. What you don’t do is leave the line, and go talk to the lovely-smelling stranger, because that’s weird.

And how would you phrase something like that? Um excuse me, you smell good. Why do you smell good? Can I be your friend? Let me smell your hair.

Of course not. Back to the scene; now it’s your turn in line. You pay for whatever it is you came for, and get in your car.

I do not; I’ve already been talking with the lovely-smelling stranger for two minutes by this moment.

I won’t attempt to articulate how one approaches others in these contexts, or how to phrase things like this – I’m sure many have done exactly that. But on that note, I can assure you – there’s always a way to phrase it.

More importantly, why did I leave the line? Infinity. That really is the reason.

  • What if they’ve had a nearly identical life to the person in your past which has that same wonderful smell? How weird would that be?
  • What if you introduce the two of them – new good-smelly and past good-smelly – and they end up writing the most amazing 80s pop-synth album the world has ever heard?
  • What if this person has a badass pair of neon orange pants, and through a gradually growing friendship, they end up giving those pants to you next spring, which results in you looking great on that particular day next spring, which results in someone else approaching you that later becomes your husband/wife/partner, which results in you having a child who, in her twenty-third year, invents a completely renewable energy source, which results in all of humanity having access to computers and clean drinking water, which results in a young boy from rural India receiving a computer they would’ve otherwise never had, which results in he and his sister studying theoretical astrophysics on their own, which results in them creating a new Grand Unified Theory, which results in scientists being able to create the first, true, faster-than-light spaceship engine, which results in our species finally being free of the chains of our solar system, which results in humanity finally being a member of the galactic community? 3

Don’t get me wrong, I hate people, too. But I love people. Learning about the complexities and ideas from another mind, to me, are irresistible. But my lack of an off switch can take a huge toll on free time, and, eventually, I’d think, sanity.

You know what prompted this post? I got up at 6, went for a run. Then I went to the store. Talked with some people, then we had breakfast at their house, and I showed the dad how to reset a router. This is the second time something like that has happened this month. 4

I had no awareness that this is uncommon behavior, until some friends, over several gradual conversations – some spanning many years – pointed it out in different ways.

That spawned a journey that eventually, this year, has lead me to this conclusion:

I need to shut the hell up.


The other side of this is my professional life. I’ve spoken at a fair quantity of conferences, and have had the opportunity to teach or lecture on behalf of some universities. What began happening, gradually, is a compulsion to speak. At times, speaking was no more than an excuse to see friends. I soon began repeating talks, or hastily preparing slides.

It wasn’t until my last speaking engagement – one for which I invested a considerable amount of time and effort – that I realized this should be every talk. If I can’t do this for every talk, I’m wasting everyone’s time.

I have little interest in speaking on instructional matters, eg “How to use (some code library intro, or programming style)”. That’s likely so because I don’t learn that way. I learn code-related things by doing. The best talks I’ve attended left me energized and inspired. The technical side of things I pursue later. I’m there to listen to the person, their experience, and what they’re sharing.

So that’s what I’m going to do. I’m shutting up unless I feel I have something of that quality prepared.

This is the first New Year’s Resolution I’ve ever made.

So far I’m doing OK with items that are somewhat easier to manage:

  • No conference-speaking engagements accepted or applied-to
  • No volunteering for code or music projects just because it seems cool.

The one-off social contexts are a bit tougher to see developing, though. How do you say no to extended conversations with strangers, or lunch with an interesting person? I think I’ll keep those.


  1. I will, however, always try to say no to the following: (1) requests for custom projects, and (2) my own capacity to over-engineer things.

  2. I’m a developer, not a psychologist! Haha we have fun around here.jim

  3. carl-sagan-dope

  4. the other was playing video games in a Target break-room. I do not work at Target.

An objective analysis and conclusion of the three best movies ever made

After a lengthy multi-decade period of research and analysis, I have concluded that the following three movies are the best movies ever made. Please note that subjective weighting concerns, such as humor, acting talent, plot, etc, were not considered in this process.

The following attributes were used to determine the rating of each movie:

  • Usage of color and cinematic composition (20% of total rating).
  • Whether or not there is a canine protagonist (80% of total rating).

This slideshow requires JavaScript.

I wasn’t accurate about the analysis part; this is really just a conclusion.

But the data is implicit! he said.

Mildly-amusing anecdotes about Mondays. Also, we all live in a waking nightmare.

Dear Readers,

As the two three of you know, I haven’t been blogging on my blog at all, which is bad. Anyways, welcome back to my blog. Blog blog blog, blog blog blog blog blog blog.

I enjoy writing, in many forms. For blog posts, it’s far too infrequent. I know myself enough to be aware that I can’t just order myself to write more. It won’t happen.

There has to be some incentive, or goal, or twist. The rules I came up with are:

  1. I will write each post from the perspective of me writing to someone in the future, a post-IOT future, in which many of the predictions of dystopia, economic anarchy, and cyber-feudalism reign.
  2. I will try to keep it short. I have this tendency – in most areas of my life – to turn projects into This Big Thing.Contemporary examples: I create a small tool to automatically update all repos in a dir. Done? Nah, let’s abstract it for general-use, build some options, account for different versions of git, explore porcelain and other plumbing stuff in git way more than I should for the scope of this project…

I’m not going to post daily. Assigning an arbitrary minimum-frequency goal sets me up for failure.

I don’t need another daily emotional blackmail and self-loathing trigger – I already have physical fitness stuff for that.

Is this one of those posts?

Yes it is. The Actual Post starts below:


BLOG POST SECTION

Working title: “Mildly-amusing anecdotes about Mondays, also we all live in a waking nightmare.”

BEGIN BLOG POST:

I love this part of week. Monday mornings.1

The infinite, silent scream of ten million people opening a billion Slack channels 2.

I imagine the hushed politeness of commuters, hazily praying for a journey of solitude, in which no one asks them the time, demands conversation, or makes eye contact 3.

The quiet sorrow and eventual surrender the day after a mass-shooting in The United States 4.

And of course, caffeine! Who doesn’t love a strong jolt of coffee on a Monday morning? Boy howdy! I sure do 5.

Thank you for reading my blog post, good luck out there.


  1. Do you still use the Gregorian calendar? A “week” was seven cycles of the light orb in the sky (you may call it “life giver” or “sol”).

  2. “Slack” was a popular application used for team communication in my time. The primary means of data input is the same as the format I’m using here to communicate with you. I know you likely communicate using more efficient means; something I’d likely term telepathy todaybut humor me here.

  3. So, there was a time when the majority of functions likely given to androids in your time were done by humans. I guess androids are an assumption. Do you have robot sex slaves yet? I am trying to convert something called “Furby” into one.

  4. This is a comment about something bad that happened to us recently. Search your neural-net for “worst shooting gun reform pre-CyberWar USA” The United States of America, my home, may not be around in your time. Do you still have nation-states? We were a super-power, which is a special title you get when you murder and marginalize the poor in favor of cheap consumer goods. 

  5. No one in my life today knows this, but I have trouble relating to most domestic concerns – almost an aversion. I hear phrases like “Golly, it sure is sunny today!” as “Please kill me! Every day is a cycle of shame and numb compliance to a world of endless, horrifying chaos!” These phrases, just as if I were speaking it in person, are an attempt to relate to the variety of two-dimensional interactions so common in our culture today. I’m trying to lighten-up, though.

No Plugins, or ‘Mono-tasking’, or The Dilution of Primary Tasks Through Obsession With Secondary Tasks

Summary: I removed most of the plugins used in my primary syntax editor. In doing so, I had a realization. And when inquiring, it’s been echoed by various friends and colleagues the past few weeks.

A parallel in music composition

Some years ago, a fellow musician asked me what I use for the more intricate works I created. She remarked that she enjoyed making such rhythm structures and textures as well, but found that writing algorithms to generate that intricacy was imprecise, and that her time was more-frequently spent tuning the algorithm, instead of creating percussive structures, or some other aspect of writing music.

I went into detail about my “process”: I don’t have one. Every moment of a (released) audio work, down to the millisecond in some cases, is manually created, piece by piece. There are no templates, “starter songs”, or anything else that takes me away from:

get an idea --> write music immediately

It’s extremely tedious, but this allows full control over the output, at the expense of time. However, this has become an extremely important component of how I write music.

I do use many automation/generative solutions for some things – but none in cases where the goal is absolute quality.

But isn’t this about plugins or something?

Yes! That’s in the next section.

Author realizes parallels between music and coding processes

I recently began a position at an excellent product development company. The owner, Mr. Williamson…no wait, that’s too obvious. Let’s call him…Pippin, among others at the company, are all known for having an extreme attention to detail and code quality.

Another coworker, to me, is essentially the Gandalf of documentation, coding standards, and tests.

So I wanted to know what they use. What plugins? What linters? 1

Getting to my point: Very little. That’s what they use.

Hack Your Work Day With This One Weird Trick

I’m very manual. Forces me to focus.— Plugin Wizard

I researched the topic of using minimally-configured editors, and found many people that echo the same. Here’s a great explanation by funfunfunction:

So I applied this to my workflow. No plugins. Well, a couple. Various syntax modes of course. No linters 2. No docblock generator3.

Then, I moved to a new house. I decided to pack my monitors early and Just Use a Laptop 4, instead of the enormous 3-4 screen NASA Command Center I typically do.

Guess what?

It made me focus. Deeply, by forcing one context at a time.

My reasoning has been – for many years – that more screens means more context on what I’m looking at. I can display more data. For the front-end, I can see the dom paint, the console, css node attributes, and my syntax editor concurrently.

That’s a Good Thing, right? Maybe for some. For me, it turns out, it’s not.

When I’m looking at the JavaScript console, I’m doing the following things:

  • Looking at the JavaScript console

In order to take in what I’m reading, there are two requirements:

  • Look at the JavaScript console
  • Do not look at not the JavaScript console

It sounds simple, even comical as I write this. Yet I must embrace with welcoming arms this positive impact on my daily productivity.

Now I just need to figure out what to do with all these monitors.

I used a photo of Voltaire because today is the anniversary of the day he was imprisoned in the Bastille, in 1717. If I thought about it long enough I’m sure I could find a bridge between that and the topic of this post, so let’s just pretend this part at the bottom provides a sufficiently-brilliant anecdote which details such a connection.


  1. My god man, do you use Alpine? what’s your tmux config like? What are your keybindings like? SHOW ME THEM DOTFILES.

  2. Except for Babel. Hoping to get my ES6/JavaScript2015/JavaScript Returns/JavaScript Premium training wheels off soon.

  3. I’ve never found a docblock generator I like. I’m now of the opinion that the best one out there is you.

  4. The Horror! Sorry for making you vomit.

Groceries

Rami bought groceries a week ago.

It was a Monday – just after midnight, when he noticed the pathetic state of the residents within the refrigerator.

No. The cabbage and the cauliflower. Not again.

Sweet Buddha Lasagna, what have I done?

What were once waxy spheres of culinary potential, carefully picked from the produce section with enthusiastic flair, had become crumbling, cadaverous orbs of neglect.

Rami swept aside the sharp, staccato thoughts of shame and suicide as he promised himself that this time, things would be different. No cauliflower or cabbage would rot within these walls again. Not while I’m here.

Not on my watch.

Right then. Time for some music.

Bach would be nice.

As he did any time he’d listen to Bach while cooking, Rami quietly congratulated himself for listening to Bach’s Goldberg Variations while cooking – something he enjoyed long before it was popularized by the character Hannibal Lecter.

He judiciously selected a Bach concerto to play with a casual, un-earned arrogance, disrobed the cauliflower and cabbage, and got to work.

Tone.js: experiment number 1

I had a great time working with the brilliant Tone.js library recently.

Green Hill Zone is a small site where I’ve transcribed part of the iconic soundtrack to the game Sonic the Hedgehog 2 – one of my favorite collections of work by the composer Masato Nakamura.

There are some other things going on, such as css animation, and a torus tunnel object, using WebGL via three.js.

It’s going to be many years before Web Audio API projects this complex perform well enough to be considered for any other context than enthusiasts, but it’s cool to see the progress made lately.

I look forward to the day where I can confidently release an entire album as an interactive, personalized app, usable from all contemporary devices, in which a web app is the direct medium. Many artists have done this before to varying degrees – myself included – but they’ve been promotional asides or featurettes, and not the primary offering. In other areas of art, primary the visual arts, sites as functional or interactive art works are certainly nothing new – they come in thousands of forms.

Music composition via a web browser is certainly a less immediate concern than most things.

Concurrent synthesis, multitrack playback, and accurate sequencing made possible with Tone.js would’ve been impossible only a few years ago, in any browser.

Sidenote: It’s taking everything in my power not to spend the next few days modeling a Yamaha DX-7 with Tone.js.