Photo by Avi Richards on Unsplash

If you’re reading this article, you probably are, or want to be, a software engineer. The reasons for why you want to be a software engineer are plenty. You like solving problems or building things. Or you want to work with driven, likeminded people. Maybe you’re just in it for the money. Whatever it is, you have a clear reason/reward for why you want to do software engineering.

What’s standing in your way? Is it lack of education or lack of experiences? Maybe you didn’t go to college for Computer Science or a STEM degree. Maybe you haven’t even attended…


Photo by Don H on Unsplash

2021 marks the 25th anniversary of Pokemon’s existence. I have been a big fan of the franchise ever since I was 4 years old. My first exposure came when my savvier Pokemon friend pulled a number of one sided trades that left me with a fistful of element cards and common Pokemon (This rash of trades was a prelude for his skills in making deals as he recently finished law school at Georgetown).

From the trading cards and toys to the handheld and now console games, Pokemon has been an interest of mine that has taken up many hours. While…


‘image: Flaticon.com’. This cover has been designed using resources from Flaticon.com

A few weeks ago I accepted an offer to work for my new company, Whitelabel. While most of my prior programming experience had been in JavaScript, Clojure, R and some Python, my first project would be primarily Ruby and Rails. After learning one language well, learning another language comes down to understanding syntax differences and utility functions.

With this in mind, I completed a Codecademy Ruby primer, subscribed to Medium’s Ruby blog daily newsletters and started working through LeetCode and HackerRank questions to get more familiar with the Ruby language and all its quirks.

One thing that I was happy…


One of my favorite things when styling websites and apps with CSS is Flexbox. It’s so intuitive and so powerful in allowing exact positioning and alignment of items without the need of laboring over absolute positioning, floats or top/left/etc. values. The only downside I’ve had with Flexbox is its nature of being a 1D focused styling tool.

I was recently working with a client on a full WordPress theme build. They had a blog and lifestyle website that they wanted to build. While reviewing the wireframes with this client, we came across a certain section focused on displaying recent articles…


I was working on a company’s coding challenge recently and came across something that seemed at first very odd. The challenge was replicating a front end comparison tool from a png mockup and a JSON file mocking an API call.

After flexing my flexbox powers, I came across a section of the UI that I was not familiar with. It was an unordered list of features for the different plans shown in the tool. Consulting the JSON file, I found the information I needed to create this list. …


Whether you are managing user records, or looking at product stats, being able to create and format a good table in React is a must. HTML makes creating a basic table easy, but with every table comes the expectation of functionality such as sorting columns by order and filtering out data. In this article I will walk you through how to create modular components and a base table layout for your next project or assignment.

Anyone who knows me knows that I am a sports stat junkie. I love to compare performances on a week to week basis between teams…


React can be a very strange language for some developers after working with vanilla Javascript. In vanilla Javascript, if you want to autofocus on an element, select text or playback a video or audio element, you create a variable referencing the target element and then chain on a method, or even use simple prebuilt attributes to set input/element behavior. In React it works a little different. To have this functionality, we use refs.

What is a ref? A ref is an attribute that is added to a target element in a component’s render method that allows us to modify the…


Typechecking is great for catching bugs as your app grows. For checking the entire app you should use Typescript or Flow, but if you don’t want to use another language during development then you can use built in React features (now supported through the prop-types npm package) to typecheck in your projects.

Why do we Typecheck?

Before we dive into PropTypes, let’s talk about typechecking and strictly and dynamically typed languages. Typechecking is a tool that is great for catching bugs before they make their way into the production app. But what is typechecking?

Typechecking is the process of verifying…


With the rise of APIs, client side rendering has become a norm for modern web development. Angular, React and Vue are some of the most popular front end frameworks that allow for easy SPA development and browser side rendering. React is a very fast and lightweight Javascript framework that uses a diffing algorithm to efficiently rerender the UI as additional API calls are made and parts of the UI update and change.

In this article I want to go over the assumptions of the React diffing algorithm and special mechanisms built into it to help it correctly identify and rerender…


Redux Counter App

In Part 1 of the two part Higher Order Components, we looked at the theory of HOC’s. We discussed how HOC’s allow us to write more modular components by extending the ability to access data streams and global state to individual components. In this article, we will continue those thoughts as we walk through connect, a Redux method and HOC. This function allows us to convert our components into connected components with the ability to access and update the global app state.

I always learn better through real world implementation, so for this article I have built a simple counter…

Daniel Pericich

Former Big Beer Engineer turned Software Engineer with a focus on Front End development

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