Refresher on Git Branches

Over the past few weeks, I have been volunteering with a non-profit organization to work on educational web application. This is the first time I worked on a project with more than 3 people. There are about 10 ten people collaborating on this project. This has certainly been an intimidating but fun experience so far.

As I am working, I have become more aware of how important collaboration and GitHub flow are in the development of a project. Conflicts in git merges can be a headache. So for this blog, I want to revisit the core concept of .

What is Branching?

Almost…


A introduction to JSX! (HTML and JavaScript Copt Cat)

When you first learn about ReactJS, you get introduced to this HTML-like syntax known as JSX. It looks like HTML but at the same time, it looks like JavaScript? Well its actually neither! In this post, I will talk about what JSX is and why we use it for React projects.

What is JSX?

JSX stands for JavaScript XML. This React extension allows us to write HTML elements with JavaScript without using methods like createElement(). We are able to write DOM-like tree structures directly into our JavaScript and React components. It produces “React elements”. These describe what we want to the UI to…


An Introduction to React Hooks

React Hooks: A Class Component Worse Nightmare?

Today we are going to talk about React Hooks. About two year ago, React v16.8 introduced us to the game changing concept of React Hooks. Basically, React Hooks allows you to and other React features . That’s a big deal!

When I first learned about React, I was immediately taught about the differences between Functional Components and Class Components. If our component needed to deal with state, I was told to make a class components because Functional Components did not have access to state or lifecycle methods. React Hooks changes that.

Why use Hooks?

Without Hooks…


Review of the Fundamentals of ReactJS

As I go through the motions of post graduation job searching, I wanted to go back to the basics as a way to solidify my knowledge on everything I learned in the past four months. In this series that I have titled as “Back To Basics”, I take a look at broad topics and break it down to its core. Maybe it can help another fellow programmer going through a boot camp or a refresher for anyone who needs it.

Lets Review React!

In this article, I will be going over the fundamentals of React. I will be breaking down the core concepts…


Welcome back to Confusion: Part 2. I mean Scopes & Closures: Part 2. If you missed the first part where I talked about scopes, you can find it here.

In this part, I will be going over closures! Closures can be a scary and intimidating topic. Just look blow at how MDN defines it:

In this article I will breakdown the concept with some examples. …


It’s been exactly 4 months since I learned JavaScript. If you asked me 4 months ago to explain scope and closures, I would run away embarrassed. It was a topic I dreaded and understood at a surface level. Even after graduating from Flatiron School’s Software Engineering program, the topic haunted me in my technical interviews. I took it for granted and did not realize how crucial and fundamental the concept was. So here I am to set the story straight and re-introduce scopes and closures.

Let's talk about Scope!

Scope simply refers to the visibility and accessibility of variables, functions, and other expressions. Anything…


Let's talk about the React component circle of life!

In React applications, we use components to split and isolate different parts of the web user interface into individual pieces. These pieces act independently and use a render function to return React elements in JSX. These elements describe how that section should be displayed to the user.

Each component goes through three phases: mounting, updating and unmounting. You can also think of it as our natural life cycle: we are born, we grow (adolescence and adulthood), and eventually, we die. React components are created by being mounted onto the DOM, they change or grow through updates, and finally, they can…


Let’s talk about about JavaScript!

To understand Object Oriented Programming in JavaScript, we first have to understand that JavaScript is a class-based language. This can be a little confusing since class is a keyword used for syntax. In other languages, like ruby, we define classes that act as “blueprints” for objects. They serve as templates while objects are instances of those classes. Inheritance of attributes and methods occur through classes.

In JavaScript, however, we solely use objects for inheritance. Classes were introduced in ECMAScript 2015. It does not support class based object oriented programming. You can think of classes as functions which are also…


When we create a new Rails project, we are able to use ActiveRecord to validate our data. In ActiveRecord, validations are special methods that prevents “bad data” or invalid data from being persisted into a database. When we write programs and web applications, we build them with others in mind. We can expect that other users use our programs and applications. However, we cannot determine how these users will interact with the program. Users may or may not try to insert invalid data into our database. If invalid data is added to our database, this can cause a lot of…


When I first began coding, errors were my worst nightmare. There were countless times where I would confidently write over 100 lines code just to get a big red error message in return. However, I soon realized that errors come naturally. And In addition to learning how to code, you have to learn how to debug your code efficiently.

Screenshot of errors after writing over 100 lines of code
Screenshot of errors after writing over 100 lines of code
Errors, errors everywhere 😣

At Flatiron School, you are given labs that contain tests you need to pass in order to submit your work. I relied heavily on rspec to guide me and help me pinpoint where I messed…

Karina Guerra

Salvadoreña exploring the world of coding. Petting animals and building things that help people and the environment are my two biggest passions :) Based in NYC.

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