Dictionary of Terms for New Developers

Kelsey Shiba
The Startup
Published in
5 min readJan 11, 2021

--

Photo by Edurne Chopeitia on Unsplash

I went to coding bootcamp. There. I said it. And now — I’m job searching and realizing that there is so much I don’t know about code, about everything. I can not even begin to understand everything that is out there — and there is a ton I did not learn in school.

I found myself googling so many terms as I continued down the learning path, so I thought I would make myself a dictionary so I could try to solidify them all.

Git

First, not the same as GitHub! Git is a version control system. It tracks the changes made to your files, so you can go back to versions you had before if you so desire. If installed, your files and history are stored on your computer — OR they can be hosted online, say, on GitHub.

Favicon

I created a backend server and the error in my console was ‘could not load resource’ for a /favicon.io. After I spent way too long researching, I realized the favicon the ICON that shows up on the tab of the browser when you navigate to a site. You can make one here. There is one that comes standard when you create a React app.

It’s the mini square photo on your website tab:

→Use

//index.html file
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
favicon.io - included in your file structure.

Meta Tags

The W3schools definition is that Meta tags define metadata. Then it goes on to say that metadata is data about data. Seriously? What the heck does that mean?!?

When I linked my portfolio to my LinkedIn profile as a featured item, the photo was blank, and it looked really bad. The description also pre-populated as “Website created with create-react-app”.

These issues were both fixed by updating the metadata in the meta tags. This is the information used by browsers when you link your site elsewhere (like posting it on LinkedIn or in your Facebook feed).

→Use

<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta name="description" content="Kelsey Shiba's Portfolio Website"/>
<meta property='og:image' content="%PUBLIC_URL%/images/shibaheader.png" /><link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />

SSH

This stands for Secure Shell. It’s a protocol for secure remote login from one computer to another.

→Use

Commonly used in some things you’ll see such as GitHub and AWS. Your SSH will look like a long string of numbers and letters like so, where you’ll input them someone to authenticate yourself.

Sample SSH key= ['AAAAB3NzaC1yc2EAAAADAQABAAABAQDVogCW5eZogRp+vF6Ut360b0bYyTmqgYaCXOyiW77I916AS5jFL3zsCtONbGn4hnG/UGGWXpLfUV85qpVJb38fskPZNuyZtjGjXM2W7qqbCZ1N9HBb6IPBaL97tmqBi+8rD7mSkoHc40sIV+KxkQSvD6AAFjQruCjxzfGIApnOvuj6IMsVEuFHBx4QhkbCzafxo02D9BZT4+dMy7tmyuC+UiNEQpgfFoszl+4VNFTIPlQQyn6CpUiV/rFXIadXsHqc+UOdVnfEXP+30YL75RHabze/1F5MY6t94AEcmcb05Dq4vwN9IjcxKmwgvxLOXzryytepvHQU+PobBEXAMPLE']

Microservice

I heard this a lot post-school, but I had no idea what it was. It’s a way of approaching building an application. The predecessor was one large monolithic application that delivered everything.

Now, everything can be split up the application into “little” services that do specific functions. Some examples might be:

User authentication, Sales Reports, Billing, Payments, Notifications

Each one of those smaller components have their own REST API usually, and it makes each one easier to test, debug, and make functional.

CI/CD

An acronym for Continuous Integration and Continuous Deployment. In the days of olde, integration and deployment were separate items. An application was built fully (likely by someone alone in their basement), and then shipped out for the customer to download / deploy.

Nowadays, continuous integration and deployment are vital to the consumer experience. It means being able to add small things to your application anytime, possibly having a staging site to test your code before you make it live, testing small units of code, and having a pipeline for how each step is completed.

It yields questions such as, “How do you push a small piece of code without breaking the entire application?” It allows teams to test and integrate code before publishing it.

AWS EC2 Cloud Computing

The EC stands for “Elastic Compute (Cloud).” I think this is an important thing to be able to understand, first at a high-level but then in more depth as we learn. There are different platforms, for example, Azure is the Microsoft equivalent.

In short, EC2 gives you the ability to run a (virtual) computer with many different types of servers in the cloud (web server, application server, mail server). You can choose options for your “hardware” and software and operating system, and version, such as MacOS, Ubuntu, Windows — whatever your heart desires. Some of them are available with the Free Tier option. It is also available to pay only for what you use, and it can be effective and inexpensive — and a ton of teams are working towards creating in that environment if they are not already.

Take 8 minutes RIGHT NOW, and watch this. It’s free. Then go fire up an instance in the cloud after signing up for a AWS account.

Agile

Agile is a methodology, in which programmers often work. It means being agile — flexible, responsible and reactive to problems and the requests from the customer or whatever you’re delivering. I would start by reading the manifesto: https://www.atlassian.com/agile/manifesto

There are many different ways of approaching an Agile work environment, Scrum — where you work towards a common goal in 2-week sprints, or Kanban, where you move things from stages, commonly from “To Do” to “In Process” to “Complete”.

DevOps

I saw this in job applications everywhere! DevOps is the process of Development and Operations teams coming together. With everything being hosted in a cloud, teams are able to collaborate on delivering an application with all the components being considered.

The entire team can decide who will fix issues, who will manage and monitor certain things and other items while remaining on the same page. It means that as a developer you might also be involved in developing security for that app, outside of just writing code to making it work.

Here’s an awesome article with visualsfor the difference between the two (Agile Vs DevOps).

I promise to continue adding to this list as I learn. I hope you learned something too!

Code on! ~ Kelsey

A very special thanks to my mentor Brian Fromme, for hipping me to all of these new terms.

--

--

Kelsey Shiba
The Startup

Full Stack Software Engineer, Administrator, Designer, and Musician.