@media screen and (max-width: 480px){}

I am currently building a website and wanted it to be accessible on both computers and mobile devices. I researched a bunch of different solutions that involved emulators and other additional downloads but eventually found out that this can be done using only CSS!

Before we get to any code, it’s important to realize how “CSS” works as its core. CSS stands for “Cascading Style Sheets” and because they are cascading, the order that the code is in your file matters. …

EmailJS Step by Step Guide

EmailJS is a very cool and simple tool that allows you to send emails from your web applications. This is a guide for how to do it in React!

Step 1: The EmailJS Portion

  1. Head over to emailjs.com and click “Sign Up Free” in the top right corner.
  2. Go to your dashboard, click “Email Services”, then add the email service you would like to use.

.toLocaleString, .toFixed, type=“search”

JavaScript is one of the most powerful programming languages. Because of that, it is very hard to learn every aspect of it and become a master. In my software engineering bootcamp, I learned the language very quickly, but I missed out on some of the built in functions Javascript offers.


I have used .toLocaleString to manipulate my data in two different ways. The first way is to format a date.

Let’s take a look at how .toLocaleString formats the following new date.

let date = new Date
date // => Sat Dec 10 2020 10:00:00 GMT-0500 (Eastern Standard…

A Look at What the Arrow and Key Word Does to “this”

During my time in the software engineering program at the Flatiron School, I always thought that functions declared with the function key word and arrow functions behaved the same, and that arrow functions were just a more advanced way of writing it. It wasn’t until I made a lazy mistake (this IS the best way to learn) that I realized that these two ways of declaring functions have different affects on the this key word.

Let’s take a look at the two functions below and what happens when…

Sorting Out the Confusion

The Javascript .sort method is one that I have struggled with for quite some time. I always found myself looking it up and fighting with it until one day I decided to save it in a file somewhere, and copy and paste it into my project whenever I needed to sort an array. This is clearly not the best way to code because you do not truly know how to use all of your tools.

Below we have an array of objects where each object holds a person’s first name, last name, and age. …

A “.inner” Look

At first glance, .innerHTML, .textContent, and .innerText look very similar when manipulating DOM elements in JavaScript. While it looks like you may be completing your task, you could be leaving your site open to vulnerabilities without even knowing.

.innerText and .textContent

These two elements appear to do the same exact thing on the surface, but act slightly differently in the DOM. The .innerText property represents the rendered text in an HTML element, while the .textContent property represents all of the text in the element.

For the purposes of this blog, I have slightly modified a lab from Mod3 in Flatiron School’s Software Engineering…

A Bootcamp Nightmare

In March of 2020, I made a big decision and decided that I was going to attend a Software Engineering bootcamp. I knew that the one of the first things that I should do is start looking at computers that have the right specs to carry me through. I had been a PC user my entire life and was sad to see that most of these bootcamps required their students to have Apple computers. I researched what Apple had to offer, and purchased the 2019 16" Macbook Pro with an i7 processor, and 16GB of RAM for about $2800. …

A Close Look At Their Differences

While working my Module 1 Final Project for Flatiron School’s Software Engineering Bootcamp, I was making errors by using the .map and .select methods at the wrong time. While these two methods are similiar, they work very differently.

We will be looking at the same Dog class and instances while we look at both .map, and .select.

class Dog
attr_accessor :name, :owner
@@all = []
def initialize(name, owner)
@name = name
@owner = owner
@@all << self
def self.all

Here we are creating a Dog class, initializing a new dog with a name and owner, then…

Travis Prol

Full Stack Web Developer 🤓 Lets go Yanks ⚾️

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store