Gifted Problems

“Not being able to read the gifted problems page without triggering a panic attack but it being the only place where your identity is accurately described.”


“The essence of training is to allow error without consequence.”
— Orson Scott Card, Ender’s Game

Describing my life

The following quote accurately describes the past 25 years of my life. Having read it leaves me with a mixture of emotions. On the one hand is a sense of relief that I’m not alone and certainly not crazy. On the other hand is an odd sense of remorse that I fit so readily into a bucket (regardless of how positive belonging to that bucket may be).

The days before I am ready to write seem colorless and slow, not bad, just different, minus the spark. Sometimes I sleep more than usual and feel sluggish. I read, I wander about in a mixture of things. I might spend hours in the garden or planning a party, or reading everything that catches my attention. Most of this looks like it has nothing to do with my lyric writing, like I’m just goofing off. I do my regular job like I’m not really there some of the time even though I get things done. It’s something I’ve adjusted to in spite of how strange it seems.

Then the clock seems to start ticking faster. My mind clears out some of the cobwebs and ideas start to surface, usually while I’m running or in the shower. There it is, right in front of me, but still like unformed clay. My feelings and thinking start to join forces and off I go, somethings at the most inconvenient times. I hate that part, when I have to delay, but that’s part of it, too. People like me don’t have the luxury of a patron, so we have to respond to every vision and notion that pulls on us.

When it works out I notice that I’m in a strange space, neither good nor bad, and that time has been altered. I’m going into my work as if I were on the tracks of a roller coaster. I’m excited, afraid, nervous, and ready as the process builds. I wish I could just squeeze it out of my head because as soon as I put pencil in my hand and get down to the business of writing the words, I know I’ll lose some of the purity of my inspiration.

Then I go into some sort of trance and get pulled down into my ideas. It can last anywhere from a few seconds to weeks. Some of it is awful. Looking for that “just right” combination that only comes after several rewrites takes what feels like an eternity. People think creativity just blasts forth like a volcano, but that feeling of ecstasy, when I’m off the ground with inspiration, passes in a flash, and then the clock slows down again. I miss it when it leaves. When I land again I feel as though I’m somehow larger and I’m waking from a dream adventure.

The Gifted Adult: A Revolutionary Guide for Liberating Everyday Genius

The Source of Giftedness

. . . Gifted children perceive in ways that are different in kind and degree than others, their heightened receptivity make them . . . capable of automatically detecting even the slightest change in their external environment. This heightened receptivity is present from the earliest stages of development and later gives rise to the urge to perfect . . . . They also possess an innate sense of how things should be and not just how they are . . . .

The only way to manifest what is the norm for someone with such a highly sensitive sensory apparatus and vision of how things ought to be in a world that seems radically out of sync is to be intense, complex and driven . . . . What if one of our most fundamental needs is to have things be just so? What do we do if our precise sense of proportion sets of an alarm in our heads . . . ? We stop, assess, and start over, again and again, until we get it right. And we don’t do this so much by choice but because of a mandate from somewhere both inside and outside ourselves. Unless you’ve experienced this urge to prefect and are a hot receptor yourself, it is difficult to make clear how fundamentally a part of a gifted person’s core personality these . . . traits are and how much they affect their overall development.

The Gifted Adult: A Revolutionary Guide for Liberating Everyday Genius

The Gifted Adult

Some characteristics of a gifted adult:

  • Advanced problem solving/reasoning abilities
  • Inquisitive with unusual and insatiable curiosity
  • Overwhelming need to know and seek out underlying truths
  • Bothered by aromas, noises, lights, and/or textures that most people ignore
  • Early or avid reading ability
  • Rapid learning ability
  • Excellent memory
  • Intense concentration and long attention span in areas of interest
  • Compassion for others and feels wounded by injustices and suffering
  • Perfectionist with very high self-standards
  • High energy and intensity
  • Moral sensitivity and desire for moral integrity
  • Overwhelmed by the need to create
  • Diverse interests and abilities
  • Well-developed sense of humor that centers on intricate teasing, subtle jokes or puns
  • Keen powers of observation and readily sees cause-effect relations
  • Vivid imagination and maintained childlike sense of playfulness and wonder
  • Tends to question rules and authority
  • Cannot switch off thinking

You must read these in the context of “this defines me” rather than “yeah, I’ve experienced that”.

The list was combined from multiple sources:

Suffering Fools Gladly

The gifted child frequency begins to feel different, alienated and alone in a world of different views and values. . . . Much of the surrounding world may seem irrational, and many people with whom they must deal, even those in positions of authority, think slowly by comparison and appear to act foolishly. . . . Meanwhile the gifted child finds that he can see a reasonable solution to a problem much more quickly than they. It can be frightening for the child to realize the world seems to be in the hands of these sometimes incompetent adults.

. . . . The child may seriously question her own worth, or the worth of others who are less gifted. She may be plagued by feelings of sadness, anger, depression and anxiety. She may wonder whether life is worth living in a world in which she so clearly does not fit. Her world seems full of banalities, platitudes, cliches and simple-minded thinking, and apparently obvious solutions are never tried, or may be blocked by short-sighted people concerned with their immediate self-interest. If she feels that because of her gifts she must assume the lion’s share of the burden of improving the lot of mankind, the odds may seem overwhelming.

Guiding the Gifted Child — Webb, Meckstroth, Tolan

On Software; On Food

Over the years I have had many a heated discussion with colleagues about what I mean when I talk about creating software. I have always had a difficult time explaining my perspective and more importantly I haven’t been successful at getting across the fact that my perspective isn’t the only one or even the correct one for every situation. I have been looking for a suitable analogy to bridge the gap and I think that I have finally found one in my other passion: food.

At its core whether you go to Sukiyabashi Jiro, TGI Fridays or your own kitchen, food is a basic necessity of life. You don’t have to have even the most basic of culinary skills to go into your kitchen, grab some bread, slap some peanut butter and jelly on it and have a meal — a damn tasty one! — that can consistently sustain you for years. Similarly, you can go to any webpage that you find appealing, grab the source, change a few obvious elements and come up with a completely new and useful webpage on which to build a business.

With a little gumption and a little practice, you can muddle through almost any recipe and produce a palatable meal. Sure, there’s going to be a few recipes that elude you but by and large you’ll do just fine. You don’t need to know the difference between baking soda and baking powder in order to bake a cake. Just follow the recipe, use online resources to help you with any substitutions you might need and a tasty cake you shall have! Similarly with all of the development resources that are available today (e.g. stackoverflow) you can “follow the recipe”, cobble together almost any project and successfully use the results to grow a business.

My in-laws ran a successful restaurant for 30 years in which they made enough to put three kids through college and still have enough to retire on. They had no training in managing a restaurant. They didn’t know how to structure a kitchen to maximize workflow and minimize waste. Hell, they did it while barely speaking English. With enough chutzpah and some common sense you can get a decently-sized team to be successful for decades.

To sum all of this up and to state my first point plainly: you don’t need training, discipline or rigor to successfully sustain a career in software (or food service) that spans decades. Period. (Look: Get over it. It’s true.) If you do have training, discipline and/or rigor then you’re going to have that much more of a leg up on the competition.

So what am I talking about when _I_ talk about creating software? I’ve managed to narrow it down to a few points. (One of the primary reasons that I wanted to write this post was to get the input of the community to help me isolate and focus my intent to make it succinct. Please send along your thoughts! (Yes, I know that I have OCPD. In fact I think that it’s one of the prerequisites to all of this. So no need to restate the obvious.))

  • Life-long pursuit of improvement and learning: Lifelong learning and self-actualization are the foundation. This isn’t something that you do between 9 and 5, Monday through Friday. This is a lifestyle. You must have a passion for continual improvement and learning.
  • Focus on consistency: The same problem must produce the same solution every time. There must be zero variance. Again, I’m talking about a lifestyle here. Doing the same thing twice and having any difference between the two leaves you with a gnawing feeling in your gut that no case of cheese puffs can quell.
  • Focus on quality: Consistency isn’t useful if it doesn’t meet the requirements and expectations that were agreed on. (This in turn requires that the requirements and expectations themselves are of a high quality!) Fit and finish are an obsession even if no one ever sees behind the curtain.
  • Focus on urgency: All of the above is an interesting mental exercise but if it takes an order of magnitude or more time to do then it isn’t useful in practice therefore it must be based on a firm foundation of urgency. Have I removed all of the superfluous movements, processes, etc? Is each iteration washing away what is unneeded resulting in a better performing process?

If you’ve never seen Jiro Dreams of Sushi (available on Netflix Streaming and Amazon Prime) I highly recommend it. It does a much better job than I am explaining this life-long pursuit of the perfection of an art.

To wrap this up: When I talk about creating software, I’m talking about employing the techniques learned through a lifetime of focused and disciplined practice. Of course you can successfully build software without these techniques but that’s not what _I_ mean by it or want from it. Just as there are situations in which it would be wasteful/not well received/counterproductive to send someone to Sukiyabashi Jiro, there are situations where using someone with my approach to construct software is not appropriate. On the flip side, there are situations where it is only appropriate to go to Sukiyabashi Jiro, and the same is true with software.

Please send along your thoughts!

Back in the saddle

My goal for the past few years has been to create a high-quality, useful and transparent technology blog from within a startup. I believe that I have achieved this with AK’s Technology Blog. Now that it has structure and momentum behind it I can finally turn back to my own random ramblings where I can let loose a bit more and touch on a wider variety of topics.


From Kent Beck’s Software Design Glossary:

Cohesion fanatics, if they have to change two lines in the middle of a function, extract a helper function with just those two lines before changing them. Using this vocabulary, they are creating a cohesive sub-element before making the change instead of making the change to the larger, less cohesive parent element. This practice can seem wasteful, but it makes seeing the impact of the two-line change much easier.

I’ve found myself doing that now and again. Good to know I’m not alone.