“wow” your friends with these simple tricks!

Responsive Web Design

If you are new to responsive web design, then this blog post is for you! I am going to break down the basics of responsive web design, and how you can easily implement it into your CSS stylesheets. If you need a quicker answer, you can scroll down to the TL; DR section at the very bottom of this blog post. But as a person who prioritizes understanding before applying, I recommend reading through the whole thing first before trying it out on your own. Without further ado, let’s get started!

What does it mean for a website to be “responsive”?

Essentially, responsive web design refers to the ability of your web application, to adjust its styling according to the size or orientation of the device on which it is being rendered. …

Using Enzyme and Jest

Image for post
Image for post
Jest, React, and Enzyme

As of recently, I have been learning a bit about testing in development. A few weeks ago, I wrote about testing in Ruby with rspec. This week, I decided to explore testing on the frontend, specifically in React components.

A Place for Testing in Frontend Development

The pros outweigh the cons in testing your code, as it ensures drastically reduced errors in production code, and therefore a more seamless user experience. Unit tests ensure proper functionality of individual methods, and integration tests secure a fluid sequence of transactions amongst dependent methods. …

Learn to use and apply memoization to save time in JS calls

Image for post
Image for post
Image from Interview Cake

In addition to considering time complexity to optimize run time, memoization is another effective strategy to reduce the speed your code will take to run. Luckily for us, this technique is fairly simple to understand and simple to apply with an intermediate to strong understanding of JavaScript.

First, we will break down the definition.

Break It Down

In computing, memoization or memoisation is an optimization technique used primarily to speed up computer programs by storing the results of expensive function calls and returning the cached result when the same inputs occur again. — Wikipedia

As I read the definition over again, I make sure to know what each word means, and how I can essentially map out a plan to create a memoization function. This is creating the road map for how I will pseudocode, and finally actually code out my memoization function. …

What it is, who should use it, the pros and cons

Image for post
Image for post

The definitive guide to determine if jQuery is for you

1. Are you an experienced JavaScript programmer?

2. Do you want shortcuts for writing faster special effects rather than writing a whole bunch of CSS and JS?

3. Do you mind relying on a dependency that is open source?

If you answered “yes” to all three of the questions above, then jQuery could be for you. Read on for a general overview.

What is jQuery?

jQuery is known as one of the most popular open-source JavaScript libraries available. It offers a quick way to implement query selection, HTML traversal, event handling, animations, special effects, and AJAX. …

Image for post
Image for post
Red, Green, Refactor

What if I told you there was a way to significantly reduce potential bugs in production code? Undoubtedly, most programmers would not hesitate to jump on this opportunity no matter the cost. As many programmers know, it can be quite the unpleasant experience for a user to encounter a bug, and for the development team to attempt to recreate the bug and fix it in production as quickly as possible.

Well lucky for us, there is a solution, but it is no magic pill. It is…

Test Driven Development (TDD)

Warning: It’s not as easy as you may think.

Giving Frontend Web Development the Credit It Deserves

Image for post
Image for post
Hand Clock Demo

Frontend web development can easily be misinterpreted as “easy”, or the “paintbrush” that makes websites look pretty. I am hoping to break the stigma and reveal that there is a lot more to frontend web development than what people initially assume (myself included).

For this particular code challenge, I was asked to build a CSS & DOM Clock, which implies building out the HTML layout, CSS, and JavaScript to create an accurate hand clock.

Note that there are many ways to solve this problem. This is simply a walkthrough of my own thought process and solution. I found this frontend web development code challenge from Pramp.com. It is suggested to be solved in about 45 minutes. I have linked my CodePen at the bottom of this article so you can see the full solution, but resist opening it until you have tried it on your own. …

Image for post
Image for post
Image from MongoDB

From June 17th through June 19th, MongoDB held its annual World Conference at the Hilton Midtown in NYC. I attended this event for the first time this past week (it was also my first time attending a tech conference) and I was certainly impressed. I want to share my experience with anyone else who is interested to know what it is like at one of these tech conferences.

The conference extended over the duration of three days, each day filled with a plethora of activities to attend. You could attend various sessions, partner talks, driver sessions, visit the sponsors’ booths, and even get one-on-one help with MongoDB experts. The venue was perfect for the conference and provided enough space for attendees to walk around and mingle without feeling overcrowded. …

When you have no idea what Binary Search Trees are

Image for post
Image for post
Binary Search Tree Example

This week I tried out Pramp to practice technical coding interviews with other software engineering interviewees. If you are not familiar with Pramp, you are matched up with someone and each take turns being interviewer and interviewee. I was paired up with a kind fellow who prompted me with the Binary Search Tree (BST) Inorder Successor problem.

I had seen BST problems once or twice before on Leetcode.com, but I never attempted them because I had not any experience with binary search trees in JavaScript. In fact, I had the vaguest understanding of what they were.

My interviewer offered to switch to a different problem, but I decided against it. In a real technical interview, it is very possible that I would have to attempt something with which I was not yet familiar. The best way to learn something is to dive right in, so this was my cannonball. …

How arrays get their powers

Whenever an array is created, it is born with a multitude of traits and built-in methods that help web developers code with ease. For instance, you may be familiar with the following array methods:

.pop, .push, .shift, .unshift, .reduce, .map, .filter, .slice, .splice, .reverse, .join

This is all incredibly neat, although it is important to understand that this is not movie magic. It is much more valuable to learn the inner-workings of the technology we use to have a better understanding of how they work. The idea is that by understanding why they work at a low level, we can build the methods ourselves and potentially produce more efficient methods, or reduce time and space complexity. Sometimes I like to think this is analogous to why we go camping if we have all this great technology and housing already; we do it to remember what it took to get to where we are today, and what resources we have to fall back on in case anything happens, or to create something new. There must have been someone or a team of web developers that put these methods into place to make these methods easily accessible. …

Running for better runtime

Image for post
Image for post
Photo by Carl Heyerdahl on Unsplash

“Some of the most successful people wake up early to exercise first thing in the morning.”

- Laura Vanderkam

If you know me, you may have heard me talk about fitness once or twice. Okay, I love it, although I am no super athlete nor fitness model; I simply see myself as a fitness advocate. Even whilst I attended the Full Stack Software Engineering Program at Flatiron School, I prioritized making time for some sort of exercise or physical activity because I knew that it was essential to my sanity, mental clarity, access to discipline, and productivity management. I even created two web applications to help users build a routine and establish healthy living. …


Rachel Lum

Full stack web developer with passions for dance, fitness, health, math, communication, and technology.

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