Javascript is currently one of the most popular and easy to learn programming languages ​​and is one of the most one for beginners coming into programming. The reason is, by now it has spread to almost every layer of programming. That is, it is currently used to develop applications on all stacks such as front-end (React, Angular, or Vue.js), back-end (Node.js) and desktop applications (Electron.js).

In 2021, with the latest version of javascript, a new type of operator alled “Logical Assignment Operators” was introduced for programming. …


Cryptography යනු සාමාන්‍ය තොරතුරු (plaintext — terminology) කිසි තේරුමක් නැති, කියවීමට අපහසු දෙයක් (ciphertext — terminology) බවට හැරවීම සහ ඉන්පසු receiver විසින් එය decrypt කර සත්‍ය තොරතුර ලබා ගැනීම යන process එක පිළිබද අද්‍යනයයි.

Photo by Mauro Sbicego on Unsplash

Cipher එකක් යනු?

cipher එකක් යනු සරලවම algorithm එකකි. එනම් encryption හෝ decryption ක්‍රියාවලිය සිදු වන steps ටිකයි. cipher (encryption හෝ decryption algorithm) එකක ක්‍රියාවලියට අත්‍යවශ්‍යම වන තවත් දෙයක් වන්නේ key එකයි (හෝ keys දෙකයි). cipher එකක් යනු algorithm එකක් වන නිසා එය අවශ්‍යනම් රහසක් විය යුතුම නැත. නමුත් අදාළ key එක (keys දෙකක් තිබෙන අවස්ථාවලත් අනිවාර්යෙන් එකක්) රහසක් විය යුතුම. එකම cipher එකෙන් එකම plaintext එක වෙනස් keys…


Recently I was tasked with converting a json message to an appropriate one line message segment. Here the json message is originated from a newly created separate machine and is sent to an old legacy system which accepts incoming messages only as a single line segment. To support this integration between two systems, “mulesoft integration platform” was placed in between these systems. This moved the responsibility of data preparation according to the destination system to this middle entity (mulesoft esb) other than doing any change to destination systems.

“Mulesoft weaves data. Similar to cloth weaving “— Photo by Sergio Gonzalez on Unsplash.

Let’s say our json message is something like below:


There are a ton of great boilerplates (create-react-app, slingshot, etc) that help you save time and kick-start your app. But most of the time using a boilerplate can be more confusing than setting things up yourself. In this post lets see how we will install everything directly from scratch.

Photo by Ferenc Almasi on Unsplash

first things first, Lets Installing node and npm (following are for centos or amazon linux)

$ sudo yum install -y gcc-c++ make
$ curl -sL https://rpm.nodesource.com/setup_12.x | sudo -E bash -
$ sudo yum install -y nodejs
# Verify installation
$ node -v
$ npm -v

Create the Project Base Directories

Use the following command to…


Oracle Procedures and Functions can be thought of as subprograms where they can be created and saved within the database as database objects. The basic idea of a function is that it should only do computations (ex: generateId()), but not to change the DB state (no changing the data in tables). And the idea of a procedure is that it is a series of steps to change the DB state. Note that both these functions and procedures can be called or referred within the other blocks too.

Photo by fabio on Unsplash

IN, OUT and IN OUT parameters

When you create oracle procedures or functions, just like in other programming languages…


The nginx web server was mainly created to solve the C10k problem (problems that arise when serving a large no. of clients at the same time). So, as a web server, it can serve your data with blazing speeds. But nginx is much more than just a web server and following are some of those that it is good at:

  • Reverse proxying — Easy integration with slower upstream servers (like Unicorn or Puma).
  • load balancing — Distribute your traffic properly, stream media, resize your images on the fly, cache content, and much more.
Photo by Taylor Vick on Unsplash

Nginx Master and Worker processes

The basic…


Jenkins, one of the most popular open-source CI/CD tools provides you an easy, powerful interface to configure your project workflow. With few clicks and configurations, you are able to create a Jenkins job that could fetch code from Github on various events (PR, Merge, Commit), compile those (build), push or deploy them to any destination entity (S3, Server).

Let's create a simple scenario with a Jenkins job. For that, click on the “New item” in Jenkins to create a new job and then give an appropriate name for the job.


With sudoers users can be granted to run commands as the root user without needing the root password — hence they only need to enter their password, not the root password. So if not done correctly, those misconfigured users or groups at sudoers may be god-like.

Photo by Justice Thompson on Unsplash

When you issue a “sudo” or “su” command, Linux checks a special file called “sudoers” file (Or LDAP) and sees if you are allowed to be granted the root privileges. If your name is not on the list, then no rights. If you don’t have sudo privileges then you may have to manually add…


Enterprise Service Bus (ESB) is a pattern/middleware which allows systems (applications) implemented in incompatible technologies to communicate with each other. Hence an ESB can be thought of as a pluggable backbone where one can plug incompatible applications, and expect them to communicate with each other without any hassle.

Photo courtesy Nathan Dumlao

Point to Point Integration (P2P)
Point to point integration is integrating systems or applications with each other directly. This is a legacy integration pattern which has many disadvantages and obstacles as listed below:


SSL stands for Secure Sockets Layer and it’s a protocol that is used to secure (encrypt) the data transition between a user and a server (website). Hence it increase the users trust on the web application — giving sense of a secure connection.

Photo by Hussan Amir on Unsplash

Say you are developing an awesome web application. Then it should have a some sort of certification (given by a well known public authority) to prove your users that it’s safe to communicate with it. So the problems arise that, how you obtain a this kind of certification? What sort qualities and standards your application should have…

Ashan Priyadarshana

Senior Software Engineer at Sysco Labs | Graduate at University of Moratuwa | GSoC 2017 | Data science enthusiast

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