Uncovering what the capabilities of the world’s most popular in-memory data store are and how to leverage its potential

Photo by Mona Eendra on Unsplash

Table of Contents

What is Redis?

Before being able to understand what Redis is, it’s vital to understand what a data store is.

What is a Data Store?

A data store is a repository for persistently storing and managing collections of data which include not just repositories like databases, but also simpler store types such as simple files, emails etc.


From a high-level point of view, computers use two…

A gentle introduction into the three basic, and debatably most important, React.js hooks.

Photo by Efe Kurnaz on Unsplash

Preface — As one may be able to infer from the title of this article, this is not a comprehensive guide going over all of the hooks that can be utilized in the newer versions of React.js, but rather a general overview regarding the basic hooks that the majority of individuals interfacing with React.js will most likely encounter at one point or another. If you’re interested in a comprehensive list of all of the hooks that can be “hooked” into your React.js components (v16.13.1 as of the publishing of this article), please refer to the React.js docs. Also, if you’re…

A high-level overview of terminal emulator instance management with tmux.

Photo by Pierre Châtel-Innocenti on Unsplash

What is tmux?

By definition, tmux is what is known as a “terminal multiplexer”.

What is a terminal multiplexer?

By definition, a terminal multiplexer is “a software application that can be used to multiplex several separate pseudoterminal-based login sessions inside a single terminal display, terminal emulator window, PC/workstation system console, or remote login session, or to detach and reattach sessions from a terminal.”(Wikipedia)

To provide you with a bit more of a comprehensible understanding of tmux and terminal multiplexers as a whole, they’re essentially glorified window and session managers for your terminal emulator that drastically increases the efficiency at which…

An overview of managing versions of your software with ease and flexibility with a tool like Git and a platform like GitHub.

Definition of a Version Control System

According to Git’s documentation, a version control system is “a system that records changes to a file or set of files over time so that you can recall specific versions later.”(Git) My intuition is telling me that this alone is a good definition in understanding how a version control system works, but just in case the definition may be a bit foggy to you still, I’ll provide you with a pragmatic example.

Let’s say you’re doing an assignment for work or school that involves writing code. You may start writing the project in one particular way, then at a specific…

Homebrew, for every type of macOS user.

Photo by Carlos Blanco on Unsplash

General Overview

What is Homebrew?

According to Homebrew’s website, Homebrew is “The missing package manager for macOS (or Linux)”(Homebrew).


What’s a Package Manager?

A package manager is “a collection of software tools that automates the process of installing, upgrading, configuring and removing computer programs for a computer’s operating system in a consistent manner”(Wikipedia). Basically it’s a tool that allows a user of a computer to download, upgrade, modify and remove packages, which are archived software files, in a streamlined fashion.

One thing to realize and be wary of is that package managers exist in many different forms and for many different types of technologies.

Examples of Package Managers

Python is one of…

Stacks & Queues, written in Python.

Definitions of Stacks & Queues

“In computer science, a stack is an abstract data type that serves as a collection of elements, with two principal operations: push, which adds an element to the collection, and pop, which removes the most recently added element that was not yet removed.”(Wikipedia)

“In computer science, a queue is a collection in which the entities in the collection are kept in order and the principal (or only) operations on the collection are the addition of entities to the rear terminal position, known as enqueue, and removal of entities from the front terminal position, known as dequeue.”(Wikipedia)

To give a bit…

William Leiby

Chicago, IL | williamleiby.com

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