Node.js is a JavaScript runtime environment.

Nowadays we can do much more with JavaScript than just making websites interactive. JavaScript now has the capability to do things that other scripting languages like Ruby or Python can do.

Node. js is primarily used for non-blocking, event-driven servers, due to its single-threaded nature. It’s used for traditional websites and back-end API services but was designed with real-time, push-based architectures in mind.

Its package ecosystem, npm, is the largest ecosystem of open source libraries in the world.

As an asynchronous event-driven JavaScript runtime, Node.js is designed to build scalable network applications. In the…

A linked list is a data structure that stores multiple values in a linear fashion. Each value in a linked list is contained in its own node, an object that contains the data along with a link to the next node in the list. The link is a pointer to another node object or null if there is no next node. If each node has just one pointer to another node (called next) then the list is considered a linked list whereas if each node has two links ( previous and next) then it is considered a doubly linked list.

In this week's blog, I’d like to talk about the most used Top 5 React.js extensions.

1. Live Share.

Visual Studio Live Share enables you to collaboratively edit and debug with others in real-time, regardless of what programming languages you’re using or app types you’re building. It allows you to instantly (and securely) share your current project, and then as needed, share debugging sessions, terminal instances, localhost web apps, voice calls, and more! Developers that join your sessions receive all of their editor context from your environment (e.g. …

In this post, I’ll show how to solve the Fibonacci Series algorithm question with two different solutions and improve the time complexity of one of the answers (recursive).

—Directions of the questions:

Print out the n-th entry in the Fibonacci series. The Fibonacci series is an ordering of numbers where each number is the sum of the preceding two. For example, the sequence [0, 1, 1, 2, 3, 5, 8, 13, 21, 34] forms the first ten entries of the Fibonacci series. Example: fib(4) === 3

  1. Iterative Solution:
function fib(n) {  const result = [0, 1]…

This post is about deploying the React.js project using Github Pages, assuming that you have a Github account and profile.

  1. First of all, create a React project using a command:
npx create-react-app my-app
cd my-app

2. After creating and updating the code for your app, create a Repository in GitHub.

Big O is a measure of the computational efficiency of an algorithm. It is measured in 2 ways:

Time Complexity — How many operations are performed?

Space Complexity — How much space is used?

Programmers aren’t usually concerned with how well an algorithm can perform as much as they are concerned with how badly it can perform, i.e. the worst-case scenario.

Consider the find method. If the target is at the beginning, great! It runs once. However, if the target is at the end, it runs n number of times, n being the length of the array. …

The other day I had a Moc Interview with the Software Engineer who kindly offered his help.

We had a small code challenge and also tackled some cultural questions. I would like to show you what the Technical interview is for the Jr. Software Engineer role according to my interviewer.

My interview lasted 45 minutes and had 2 small tech questions with the take-home question.

Question #1:

Given an array of numbers, come up with a solution to add 1 to each element in the array. Giver: var xs = [1,2,3]; // [2,3,4];

Solution: I used the For of loop…

The other day I had a challenge and I have to create a function that generates the random string.

I’d like to show a couple of different ways to do that.

1. User the npm library to generate a random string:

To install randomstring, use npm:

npm install randomstring


var randomstring = require("randomstring");
randomstring.generate();// >> "XwPp9xazJ0ku5CZnlmgAx2Dld8SHkAeT"randomstring.generate(7);// >> "xqm5wXX"
randomstring.generate({length: 12,charset: 'alphabetic'});// >> "AqoTIzKurxJi"
randomstring.generate({charset: 'abc'});// >> "accbaabbbbcccbccccaacacbbcbbcbbc"

Command Line Usage

$ npm install -g randomstring$ randomstring
> sKCx49VgtHZ59bJOTLcU0Gr06ogUnDJi
$ randomstring 7
> CpMg433
$ randomstring length=24 charset=github readable
> hthbtgiguihgbuttuutubugg

2. Create a function. The function I used:

let refCode = Math.random().toString(20).substring(2, 5) + Math.random().toString(20).substring(2, 5);refCode;
// >> f1i64a

3. Using MD5 Library:


While preparing for my future tech interviews I started the Udemy course on Algorithms and Data structures. In today's’ blog, I’d like to show 3 solutions to common algorithm questions.

  1. FizzBuzz.


Write a program that console logs the numbers from 1 to n. But for multiples of three print “fizz” instead of the number and for the multiples of five print “buzz”. For numbers that are multiples of both three and five print “fizzbuzz”.

Example:  fizzBuzz(5);


function fizzBuzz(n){     for (let i=1; i<= n; i++){…

Hooks were first introduced by the React community in 2018 with the release of React 16.8. The purpose of Hooks is to let use state and other React features without writing a class, with functional components.

Hooks don’t replace the knowledge of React concepts. Instead, Hooks provide a more direct API to the React concepts: props, state, context, refs, and lifecycle. Hooks also offer a new powerful way to combine them.

Hooks are functions that let us “hook into” React state and lifecycle features from function components. Hooks don’t work inside classes — they used in React without classes.


Veronika Dodda

Software Developer

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