I received a really nice complement from Paulo Almeida today that gave me pause:

First, it was just incredibly kind to say. I’ve always felt different, and that most things about me are wrong, so hearing this was surprising. It made me melt a little bit. My immediate reaction, however, was:

No you don’t!

And that’s what brought me here to introspect. So first, here is why, based on what our society values, you should not want to share qualities with me:

  1. My personality is intense. The way that I work, and even how I speak, overwhelms other people.
  2. My interests are not hobbies or brief activities, they are enduring obsessions.
  3. After I faced relentless adversity, I became selfish and pursued a life path to maximize my freedom and happiness.
  4. Humans are very social, and many family oriented. I am not.

And I’d also say you are just right the way that you are, dear reader. And given that the above deviance comes with a constant “going against the grain” component, I encourage you to run away.

Are you still here?

If you are, then I want to share with you some of the history and mindsets that makes me who I am. The key part of the statement that I made above is “based on what our society values,” and this is a choice we can all make - I have made choices that move me toward what I want to be, and somewhat away from what society wants a generic successful person to be. This post is about the love of this dinosaur. Some adversity or dark experiences sometimes have a silver lining too.


A lot of life is about figuring out what makes you… essentially you, and then figuring out if it’s a good thing or a bad thing, and regardless, finding a way to manage it or use it to your advantage. For me, when I was in college I realized that I had an internal intensity that had two sides. If I was forced to suppress it, whether that be for a social interaction or just self-monitoring to try and be someone that others would like, it could slowly manifest as a feeling of being overwhelmed, and on the onset of shutting down. I might be okay for half a day, but then “all of the things” in the current situation were too much. This didn’t happen to me in high school because of the safety of routine - I walked to school in the morning, went to classes, went to cross country / track practice after, and then home for homework and quiet in the evening. Interactions and activities were largely predictable. College caught me off guard, because along with losing that structure, I kept being hit with adversity after adversity. I didn’t often feel safe, either in understanding who I was and what my place was in the world, or in having security in a predictable routine and interactions with other people. I’d often need to retreat to privacy to recover. I think this is a fairly typical trait for someone that is introverted. You only have so much quota for particular kind of interactions that are draining, during which maybe you exert extreme control over yourself to behave in a certain way, and eventually you run out.

How does this connect to programming? There are actually three variables: music, movement, and color. Let’s start with the first two. I realized at some point in college that music was a means to allow me to release that energy. It started with running, which I’ve done since I was 13 or 14 years old. At the time I didn’t realize it, but when I discovered running it felt like a way to release some of my intensity. It felt great, and my liking of routine meant I could go to a tiny track above a basketball court (I think 23 or 24 laps was a mile) and just run in many circles and enjoy it. I’d bring a Sony Discman strapped to my hand and listen to CDs I burned myself and 90s music, and it was fun. When I introspected 15 years later, I realized that music and movement combined made me feel good. I could hear a song that was heavy with emotion (positive or negative) and it would reflect either a deep joy or sadness that I had, and allow me to quietly express it. This is still true for me today. This is where the positive side of my intensity finally revealed itself. When I combined music and movement with computers (in my first job I was tasked to figure out the command line, high performance computing, and basic programming), I hit a flow state. This is where “color” comes in - the entire experience of the music, the colorful syntax highlighting, and focus was this beautiful symphony of experience I had never had before. I found I could solve hard problems in this state, and hours would pass like nothing. I’d finish a programming session and feel proud of myself, and at peace with any previous stressors in the day. This was (finally) my intensity harnessed in a way that wouldn’t hinder, but rather would help me.


I can now talk about the mindset that I’ve developed in the past decade that largely makes me who I am. The first quality is that I’m very stubborn, but also patient. I didn’t realize this until I was exposed to other programmers and saw how they worked. To be fair, they were mostly men and this could be a gender difference, but what I largely saw was anger or frustration. There would be a lot of cursing. I suspect this easily translates to getting annoyed enough that you have only a certain quota for trying things. It really surprised me because it takes maybe 5 days of failing to get something to work for me to start to feel this level of negative emotion, and at this point I take a break and work on something else to come back later with fresh eyes. But why is that? I think there are three variables, and all are related to mindset.

  1. Enjoyment of the State
  2. Self-confidence
  3. Definition of failure

The first thing likely led to the latter two.


Because programming essentially puts me into a state of flow (and joy) it’s a place I enjoy being, and I’ve hit my head on so many tasks over the years (that maybe took a long time to figure out) I finally in my mid 30s have confidence in my ability to do things. Part of this is tied to the way that I learn. Because I learn by doing (because I enjoy doing things but don’t really enjoy reading about doing them or watching someone else doing them) I’ve done that more over time, and I’ve gotten pretty good at this “hands on” method of learning. Having successful outcomes (maybe at anything you try, I think?) gives you confidence in your ability to do it again. This means that I can start working on a task with absolutely no direction or idea of where I’m going, but I figure it out as I go. I mention this because I realize not everyone is like this - I know many talented engineers that need almost complete certainty of a path before pursuing it. They think through all the details before writing a line of code, and it might even be hard for me to work with them because “I don’t know yet” is not a satisfactory answer. As a side note, it’s really useful to identify if you have a conflicting work style with another engineer, because you can talk about it and identify strategies for both of you to be effective and happy. I think of needing certainty as an invisible barrier. While I don’t have certainty of the direction or outcome, I have confidence that I’ll figure that out as I go. I don’t even have issue trying out multiple things, and learning from experience the pros and cons of each. The larger barrier for me is really wanting to do things. I’ve never been someone you can tell to do something - ironically that sometimes makes me not want to do it. I’m just not extrinsically motivated. 🤷‍♀️️

Definition of Failure

I was a perfectionist as a young person, but I strived for it without asking why. I believe it was because I was afraid of failure, and of not being able to please others around me. A stark reality that most of us hit in college is that failure is inevitable. Especially in programming, nothing ever works the first time! The state that we have to learn to be comfortable in is one of almost constant failure. Thus, the mindset I eventually adopted was that failure is more of a decision. I found that there was no true state of “failure” until I decided to give up, or that it was something I had pursued before but no longer wanted to. And when I’m tired of working on something, I just stop working on it. It’s pretty amazing how you can come back with fresh eyes, and you in that future moment has insights that previous you did not. And these insights? They come usually when you aren’t working, ironically enough. You might be relaxing, on a run or walk, or (for those that linger in the shower) you might have shower thoughts. Side-note - I live in a very dry environment and don’t want too much water to strip my skin of all oil, so I’m usually in and out in under 5 minutes. But I digress!


So what happens when you can reach a state of flow and happiness with music, movement, and programming? You choose to do it a lot. Since I discovered it, my entire routine has been focused around programming. Every evening and weekend for the last 15 years of my life, I can almost guarantee I’ve been in front of a computer, playing music, and working on something. In graduate school the one weekend I didn’t do this was because I had an unexpected trip to the ER and couldn’t. It’s (fortuntely and unfortunately) how I derive meaning. I’ve never been very family oriented, and part of that is just the way that I am, but the switch to needing to find something to give me meaning was another result of college. I fell in love once, lost this person, and learned the hard way that placing a reliance of happiness or meaning in another person was dangerous. They might like you one day, and change their mind the next. Their affection is conditional on something you may never know, and then when they discard you, what do you have left? This experience left me with a hole, and sadness, and probably because I needed something of meaning to grasp onto, when I found my love of programming I committed to it entirely. It was assuredly something that if I put time into it, I would see results. I would feel good about myself, and heck, I knew if I could work a few years and get into a graduate school that would allow me to program, I could someday be a software engineer. That took me almost a decade. This was a choice that I committed to in my early 20s and pursued, with no looking back. And it all started with a first step - ensuring that I finished college majoring in it doesn’t matter, was employed and financially independent, and then I’d figure out the next step from there. If you are still a student I’m not saying that you should blow off college or not think carefully about your major, but I am saying that if you start one step behind you can make choices to pursue a path you want.

This by no means was an easy time, and I won’t go into details about my 20s. I had extreme adversity, and it just kept hitting me. And I was young and fairly independent, and sometimes I made initial bad choices. Experiencing adversity also increased my appetite for risk, unfortunately because I didn’t value myself as I might. What saved me was my choices. I could introspect, identify a problem, and even if I didn’t know the solution, come up with a method to give myself the opportunity to find a solution. I found that friends and family might care about me a lot, but it wasn’t up to them to help me. In this decade I would go on a 1000+ mile bike ride by myself, regularly get lost in forests or (oops) take a 19 mile run, and push myself to be successful despite the hardships that I was enduring (and largely trying to hide).

And here is the silver lining of bad life experiences. I believe that if we are able to introspect, we are incredible in our ability to handle this kind of challenge. You come out of adversity incredibly resilient and strong. And having experienced so much darkness, I am an ironically happy person. In my mid 30’s my predominent emotion is probably “silly” and still “intense.” I go out of my way to have fun, and it’s unlikely I’ll do something if I don’t think I’ll be having fun. I also don’t take myself seriously, really at all. Do I still face the same challenges with managing my intensity and dealing with social and other stressors? Of course. I also still feel sadness, I’m only human. However, I have comfort and confidence in my ability to make choices. I am selfish in the sense that I no longer place others’ happiness above my own, and I have no issue saying “no.” I try to make every decision pushing myself a tiny bit closer to something that I like, or a tiny bit further from something that I don’t. This includes experiences, kinds of work, people, and communities.


Now we get to ideas. The reason I told the stories above is because I needed to explain how I can so easily get excited by an idea, and have a very low barrier to entry to working on it. The “secret” (if you will) is that I derive meaning from my work (again, not for everyone), joy from the actual practice of doing it, and my life experiences have accumulated to make me a person that wants to have fun (my own definition of fun, mind you). The creative side of me enjoys making these same projects beautiful (branding and documentation) and never at a shortage of ideas. Are s̶o̶m̶e̶ most of them terrible ideas? Indeed! I just don’t care. I’m not writing software because I have to, it’s because it’s fun. It’s how I express myself, my creativity and ideas, and experience a sense of meaning. When I tire out of working on one idea, I can quickly jump to another one and the positive flow continues. It’s a bit like an addiction really, but (for the work that is part of my employment) I get paid for it. I think that’s a win-win? Thus, a strategy that I’m working on is maximizing the overlap between the things I’m excited about and want to learn with the things I have to do. As I did after college, that is about taking tiny steps toward the future version of you that you want to be, and the work that you want to be doing. No job is going to be perfect for you out of the gate, but given a generally supportive and kind group of people around you and problems needing to be solved, you can slowly move toward something that is.


To again respond to the Tweet, I don’t think anyone needs to try and be like someone else, but rather to introspect into themselves and find the path that is going to make themselves feel fulfilled. I took a lot of bad experiences and things that I didn’t like about myself (or were simply just different) and harnessed them for my own success and happiness. And despite this successful outcome, I don’t wish the experiences that I had on anyone, because it would have been so easy to not have a good outcome. It would have been so easy to place the burden of “fixing things” on someone else, but I owned it. Thus, if you do identify that you want to change something about yourself, it really does come down to your choices. Some gentle reminders that have helped me over the years:

  1. You don't need permission to start or do something.
  2. Ideas are exciting, but not all of them. Find the ones that excite you.
  3. Find the experiences that allow you to experience flow, and pursue them.
  4. Things we don't like about ourselves can be harnessed for good.
  5. You'll be a different person as time passes, and that's OK.

And when all of those things come together and you find that you intimately know yourself and know how to make decisions to be the best version of yourself, then I think you’ll find your personal love. And the last point is also important - some future variant of ourselves may take a 180 and try something totally different in any respect, and that’s OK. So speaking for my present self, this combination of music, movement, and programming, and choosing to immerse myself in it over other more traditional (social) activities, is what I have decided to do, and is the love of this dinosaur. ❤️

Suggested Citation:
Sochat, Vanessa. "The Love of the Dinosaur." @vsoch (blog), 28 Aug 2022, https://vsoch.github.io/2022/the-love-of-the-dinosaur/ (accessed 16 Apr 24).