Reducers are important in Redux for state management. It is essentially a function that takes in two arguments, current state and action, and returns a new state based on both arguments.

You may have seen a variation of “embraces Lean methodology” or “familiar with Lean development” on Software Engineering job postings. What does that exactly mean?

The term Lean Software Development originated from a book authored by Mary Poppendieck and Tom Poppendieck. This book translates the lean manufacturing principles and practices and applies them to the Software Development world.

Lean Development can be summarized by 7 principles:

  1. Eliminate waste

“Waste” should be removed to maximize customer value. This includes unnecessary code or functionality which can delay time to customer or slow down feedback loops, starting more work than can be completed…

Objects consist of key and value pairs. A key can be a string or symbol and a value can be any type.

There might be instances where you want to sort your object by key or value. However, there are no in-built JavaScript methods to sort object properties.

If you are a new to coding, it’s highly possible you’ve heard of Javascript. It is one of the most popular language used today. To put it simply, Javascript is a language which creates interactive web pages.

Typescript was developed, as a typed subset to Javascript, to fill the gap as an object orientated language when Javascript grew as a client side language. The open source Typescript command-line complier can be installed as a Node.js package. Typescript shares the same syntax and runtime behavior as Javascript. Essentially, this means that your existing JS code is also TS code.

Typescript code…

Big O Notation is a mathematical expression of the relationship between input size and the time in relation to that input. In other words, it classifies algorithms depending on how they respond to the input size. It’s a basic system of generalizing code and its performance to other code. It is otherwise known as Time Complexity.

Big O Notation is a common concept brought up during technical interviews. Two different sets of code with the same function can differ in terms of speed, memory, readability and sometimes brevity. …


A palindrome is a sequence (such as a word or combination of letters/numbers) that can read the same backwards and forwards. Writing a function which determines whether an input is a palindrome is one of the most common white-boarding question that an interviewer may ask.

There are many ways to write this algorithm and I will be showing you a way to check for palindromes in Javascript by using objects and a random string as our input.

Before we write our function, let’s think about problem step by step. We want to function to return true or false depending on…

Agile methodology in software development implements collaboration between self organizing cross functional teams. Agile methods encourages teamwork, accountability, and flexibility which allows for fast delivery for end users.

The Manifesto for Agile Software Development is based on twelve principles.

  1. Customer satisfaction by early and continuous delivery of valuable software.
  2. Welcome changing requirements, even in late development.
  3. Deliver working software frequently (typically in weeks).
  4. Close, daily cooperation between business people and developers.
  5. Projects are built around motivated, trusted individuals.
  6. Face to face conversation is the best form of communication.
  7. Working software is the primary measure of progress.
  8. Sustainable development, able to…

React, developed by Facebook, is a front end Javascript library for building user interfaces. Many large companies currently use React in production such as Netflix, Instagram, Airbnb, and Reddit just to name a few.

React’s popularity has grown since its official release in 2013 and it is currently one of the most popular frameworks.

In terms of demand for React in the job market, React remains one of the most sought after front end Javascript frameworks.

In Javascript, it can be difficult to access specific data in HTML by traversing the Document Object Model and using that data in your Javascript functions. Introducing, datasets.

Dataset is a read-only property of the HTML interface that provides access to all the custom data attributes set on the element. You can store data inside the elements so it can be easily available for a later function.

In HTML, the custom dataset attribute is set by using data- followed by the custom attribute.

<p class="like-info" data-user-id="1">20 Likes</p>

The name of the dataset must only contain lowercase letters, numbers, dash (-), dot (.), colon (:), or underscore (_). …

Ruby on Rails has a series of form helpers that can be used for specific database records. We know about text_field for text input and number_field for numeric input. But we can do so much more!

These helpers have different uses for specific cases of user input. I’ll be reviewing a list of what I think are the most helpful helpers for form control. I am using form_for in the following examples.


Allows the user to input their email address. Returns a text_field of type “email”.

Jennifer Yoo

Software Engineer

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