DEV Community

Orion Aon
Orion Aon

Posted on

Programming is Like a Dandelion

You might be thinking, Orion, what the heck are you talking about?

Hear me out though! As a new dev, but a very practiced forager and plant nerd I've made some interesting connections through experience with these two very different fields.

Flowering dandelion

You probably recognized this plant as a dandelion, but not because it's the subject of this post. It's because you've seen them, heard about them, maybe pulled them from your lawn or garden. Your brain knows the pattern of a dandelion, from its deeply lobed leaves to its sunny yellow flowers and later its fluffy seed head. All these little traits come together to 'make' a dandelion.

Pattern is the keyword there, and the whole idea behind this post.

Pattern Recognition

Our brains were built for pattern recognition. Most of the time this process is happening automatically and unconsciously. For example, when you saw that dandelion your brain very quickly processed each part of the image:

  • Yellow flower on a long skinny stalk.
  • Toothy, lobed leaves growing low to the ground.
  • In an urban area which is a favorite of dandelions. You may not know that, but you're regularly seeing them in urban environments, so that pattern exists in your brain!

On and on, and done at almost instant speed. Every day this built-in ability is helping you make decisions, move through the day, avoid dangers, learn new information, and a myriad of other things.

My background and abilities as a forager and plant nerd are 100% reliant on pattern recognition. I know which plants are edible, I know how to tell them from their potentially toxic look-a-likes, I know one mushroom species from another similar one, I know a spruce tree from a fir tree, all because I know their patterns. I have heightened abilities because I'm aware of the role of pattern recognition in our learning and because I've spent the majority of my life using it to study nature. I've seen some of the same abilities transfer over to learning programming.

Code example

I've noticed that I can pick out the patterns that make up different aspects of a programming language, understand why they're there, and see the small differences in similar concepts. Learning and writing code, as with most things, is all about patterns. In JavaScript, you know an arrow function because you've learned its pattern. You know a for loop from a forEach because of their differences. That's pattern recognition! And, you can become better at it which could help you learn a little more efficiently.

How to Improve Your Pattern Recognition

The first step is just to be aware of its existence. This routine function that your brain is going through nearly constantly. Once you're aware, you can start paying attention to the patterns of things and understanding why they're like that. Look for and try to conceptualize why the patterns are a certain way, instead of just letting your brain associate a pattern with a thing unconsciously. This does take practice, and some of you will be better at it than others.

The above-linked article also mentions that playing games, physical or computer, can help too because games are all patterns when you break them down! I'm also a gamer (video and board) and definitely notice that my pattern recognition helps give me a little edge when competing with my friends!

Board game, Ticket to Ride

Maybe more interestingly though, the article mentions a potential link between some neurotransmitters (dopamine, norepinephrine, and anandamide) and pattern recognition. It goes on to say that these are the neurotransmitters associated with the 'flow state' among other things. I know when I have a really good, lose-track-of-time session of writing, coding, reading, whatever, I feel great about what I accomplished and I have a better recall of that material.

The more you enjoy and are enthralled by a topic of work, the most focus you'll have on it, and the better you'll commit its patterns to memory and understand them!

Were you aware of the role pattern recognition has on our day-to-day lives? I think it's fascinating!

If you made it this far, thank you for reading my weird little musing on connections between plants and programming. This is my first article on Dev and I would love to know what you think! I write regularly about foraging, but this is my first shot at anything tech-related!


Top comments (1)

robregan profile image
Robert Regan

Really great article Orion! 🙌