Photo by Nigel Tadyanehondo on Unsplash
I wrote a follow up to this post called More Things Developers Say and What They Mean. After reading this, check out that post to learn even more .
When I got my first job as a new developer, I thought I had a good foundation of programming concepts. I knew there were things I didn’t know yet, but what I didn’t know was just how many slang and buzz words existed that don’t show up programming courses. When you are new, like I was, imposter syndrome is extremely high and you really don’t want to prove how “unqualified” you are by admitting you don’t know what people are talking about.
Because of that, I decided I would devote this post defining a couple of these new phrases for you in a safe environment. That way you don’t have to admit you feel like an imposter.
(I want to emphasize, it is ok to feel like an imposter. It’s something that never goes away. With a field that grows and changes as fast as this one does, you will never ‘arrive’ and be all knowing. One of the biggest differences between green developers and seasoned ones are that they are willing to admit that they don’t know something and are willing to ask “What is that?” The sooner you learn to get over that ‘imposter’ feeling, the more quickly you will improve as a developer.)
NO-OP: A no-op means “No Operation” and means probably what you think it means, it does nothing. It used when you write code that intentionally does nothing. The first time I heard this, it went something like this. “Unfortunately, the API required me to pass in a function, so I passed in a no-op.” I was just sitting back thinking, “Oh this must be some crazy functional programming jargon like a monad. This is way above what I can understand right now.” I was almost a little disappointed to learn what it really meant.
WIP Commit: You may also hear “commit that as a wip” or something similar. When I first hear this, my knowledge of git commands were: git add .
, git commit -m
, and git push origin master
. In fact that was usually what I did every time. In that order. So I just assumed it was some sort of git command that I hadn’t learned yet. After searching for how to use git whip
I eventually learned it that a it wasn’t ‘whip’, it’s ‘wip’ and it stands for Work In Progress. Sometimes you just need save your changes in it’s current state and the current state is not finished, it’s a … well you know.
Talking to a rubber duck: Also called, rubber duck debugging, this is processes of talking through the code, bug, or whatever out loud. By describing the problem out loud, it forces you to stay focused and often times you find the solution on your own by talking through it. Why a rubber duck?This process was made famous from an influential book called The Pragmatic Programmer where a programmer kept a rubber duck with him to talk to it, which would help him think through the problem and solution much easier. As a green developer, I would often times hear things like, “Can you be my rubber duck for a moment?” or “Thanks for being my rubber duck.” Essentially, what is being said is “Can I talk through this problem out loud with you? I don’t expect/need you to help me get the answer, I just want to talk through the issue.”
Uncle Bob: Speaking of influential writings, another pair of influential writings in the developer world are The Agile Manifesto and Clean Code: A Handbook of Agile Software Craftsmanship. Robert C. Martin authored or co-authored both of them. Both are extremely influential writings on what makes code “clean” and “easy to maintain.” The reason I put it here is that, when I was new, I would hear people talk about Uncle Bob like he was Jesus and/or Satan. I would hear things like, “This code would make Uncle Bob proud” or “Uncle Bob wouldn’t like this, but I’m doing it anyway”. What was really being said was that “I’m proud of my code and how ‘clean’ it is” or “I know this doesn’t follow principals of ‘clean code’, but I have reasons why.” Why Uncle Bob? He refers to himself as Uncle Bob and even his consulting company is named Uncle Bob. Why did he chose to refer to himself as Uncle Bob? I could not find an answer that was from a trusted source, so I decided not to speculate. The world may never know.
What jargon used to trip you up? Comment below or tweet to me. I want to make this a regular series of post and would love the help compiling a much bigger list of jargon and buzz words. Thanks for the help and don’t forget to check out my follow up to this post called More Things Developers Say and What They Mean.