Web Technologies

Blockchain is a computer file used for storing data – information. Like any computer file (including the document you are reading now) it exists on a digital storage medium, such as a computer hard drive. And it takes the form of a string of binary “bits”, ones and zeros, which can be processed by computers to be made readable by humans.

Blockchains, however, have three properties which, while not unique individually, when put together mean they function very differently than other types of computer files.

The first is that they are distributed. The file containing this article can, in theory, simply be stored on one computer and accessed over the internet by however many people want to use (i.e read) it. A blockchain, on the other hand, is duplicated, in its entirety, across many computers.

This means that no one person, or entity (such as a corporation, or government) has control over the content of the file. While whoever is in control of the computer storing the file which you are reading now can edit it, to make whatever changes they like, that isn’t the case with a blockchain. Editing the blockchain is only possible if there is a consensus between the network of computers storing separate, but identical, versions of the blockchain. And this is made possible thanks to the second fundamental innovation of blockchain – cryptography.

How it works?

STEP 1

A trade is recorded. For example, let’s say Mr A is selling two of his coins to Mr B for Rs 100. The record lists the details, including a digital signature from each party.

STEP 2

The record is checked by the network. The computers in the network, called ‘nodes’, check the details of the trade to make sure it is valid.

STEP 3

The records that the network accepted are added to a block. Each block contains a unique code called a hash. It also contains the hash of the previous block in the chain

STEP 4

The block is added to the blockchain. The hash codes connect the blocks together in a specific order. Hash codes keep records safe

A hash code is created by a math function that takes digital information and generates a string of letters and numbers from it. Let’s take a closer look at two important characteristics of hash codes:

First, no matter what the size of the original file, a hash function will always generate a code of the same length.

Unlike traditional ledgers, a blockchain database is decentralized and has no “master.



Possible uses

There is a lot of hype about blockchain, but some promising uses are under development.

CRYPTOCURRENCY

Blockchains are the basis of bitcoin and other cryptocurrencies.

BANKING

Financial institutions have been investing in blockchains to simplify their record-keeping for payments.

SUPPLY CHAIN

Recording trades on a blockchain offers a way to check the history of a product. For example, jewelry companies hope it can assure customers that diamonds are not from places where they could finance war.

0

Web Technologies

The backend web frameworks comprise of languages and tools utilized in server-side programming in a web application development condition. The way to the effective back end development of web applications is picking the right stack, adapting new databases and programming languages and understanding the server engineering too.

Express

Express.js, or simply Express, is a web application framework for Node.js, released as free and open-source software under the MIT License. It is designed for building web applications and APIs. It has been called the de facto standard server framework for Node.js.

Express prides itself as a minimal, fast and unopinionated frameworks. It provides some core framework functionalities without obscuring the features of Node and leverages the powerful performance of the asynchronous Node.js. It’s also quite flexible and supports full applications as well as REST API as well.

Features:

  1. Powerful routing API
  2. Good documentation
  3. Supportive community

Laravel

Laravel is a PHP based backend framework which prides itself on its beautiful syntax, ability to accommodate large teams, and the functionality of its modern toolkit. Laravel follows the MVC architectural pattern and was built to facilitate extensive backend development. Laravel also offers its own database migration system and has a robust ecosystem.

Features

  1. Simple and fast routing engine
  2. Comes with its own CLI
  3. Powerful template system (Blade)
  4. Good documentation

Django

A free, open-source backend web development framework, Django is widely used for the rapid development of APIs and high-end backend web applications. Named after the renowned guitarist, Django Reinhardt, this Python framework was created in 2003. The Django framework supports the quick development of backend web applications with very less coding. The efficiency of this Python web development framework is proved from the fact that it is used by some of the busiest applications on the web.

Besides taking off the web development hassles, Django has many other features that woo the developers across the world.

Features:

  1. Highly customizable
  2. Explained documentation
  3. The popular tool with extensive community
  4. Clear and defined MVC organization

Spring

Spring is a Model-View-Controller framework that uses Java, the all-time popular language. It’s used by websites like Wix, TicketMaster, and BillGuard. Spring possess a lot of sister projects that boost its performance and let you scale your business easily. The fact that it uses Java, a strongly typed language, is a serious pro for many web developers. The learning curve might be quite steep tho, especially if you don’t know Java.

Features

  1. Create stand-alone Spring applications
  2. Highly scalable
  3. Great documentation
  4. Built for large scale applications that use a cloud approach
  5. Extensive ecosystem

Ruby on Rails

Released in 2004, Ruby on Rails is a free, open-source MVC backend web development framework. Ruby has always been considered to be one of the most developer-friendly languages and the Rails framework combines the capabilities of Ruby language. This framework provides developers with pre-defined solutions to perform repetitive tasks. It supports super-fast development and offers almost every component that a developer looks for in an advanced framework. It has been used to build the backend of renowned applications such as GitHub, Airbnb, Shopify, and Zendesk.
Features:

  1. Good conventions
  2. A number of plugins available
  3. VPS hosting service
  4. Massive community

CakePHP

CakePHP is one of the first PHP frameworks to be released back in 2005. Since then, it has come a long way and is now known as a modern PHP framework made to allow developers to build quickly. CakePHP uses clean MVC conventions and is highly extensible making it a great choice for building both large and small applications.

Features

  1. Allows you to build rapidly
  2. Comes with “batteries included”
  3. Built with security in mind
  4. No complicated configuration required to get started

Microdot Framework
The Microdot framework is gradually gaining traction among developers worldwide as it helps in creating reliable, scalable microservices. An open-source .NET framework, Microdot allows developers to focus on coding as it offers well-written documents on microservices pattern and architecture. If your organization uses platforms developed by Microsoft and in case you plan to build microservices, Microdot is incontrovertibly the best option.

Features

  1. Interoperability
  2. Common Language Runtime engine (CLR)
  3. Language independence
  4. Base Class Library
  5. Simplified deployment
  6. Security
  7. Portability

Flask Framework

Flask is a micro web framework written in Python. It is classified as a microframework because it does not require particular tools or libraries. It has no database abstraction layer, form validation, or any other components where pre-existing third-party libraries provide common functions. However, Flask supports extensions that can add application features as if they were implemented in Flask itself. Extensions exist for object-relational mappers, form validation, upload handling, various open authentication technologies and several common framework related tools. Extensions are updated far more regularly than the core Flask program.

Features

  1. Contains development server and debugger
  2. Integrated support for unit testing
  3. RESTful request dispatching
  4. Uses Jinja2 templating
  5. Support for secure cookies (client side sessions)
  6. 100% WSGI 1.0 compliant
  7. Unicode-based
  8. Extensive documentation
  9. Google App Engine compatibility
  10. Extensions available to enhance features desired



0