Aditya Chatterjee's Blog, page 99

April 5, 2022

typedef vs using in C++

typedef and using in C++: Two ways to a cleaner code

Table of contents:

IntroductionDeclaring AliasesKey DifferencesConclusionIntroduction

In this article, we will explore the differences between the two type aliases in C++ - typedef and using.

In a nutshell, you rename an existing type, such as int, to Photo.
They assist you with writing code that is clear, concise, and easy to understand.

Consider the following example,
While working in a library, two functions are created

int getLengt...
 •  0 comments  •  flag
Share on Twitter
Published on April 05, 2022 10:42

April 4, 2022

Simulated Annealing

In this article, we will understand what simulated annealing is and get to know its uses in Probability and Data Science.

Table of contentsWhat is simulated annealing?AlgorithmAdvantages and disadvantages

What is simulated annealing?

gradient-local-minima

In a situation like shown above, the gradient descent gets stuck at the local minima if it started at the indicated point. It wouldn't further be able to reach the global minima. In cases like these, simulated annealing proves useful.

Simulated annealing is a...

 •  0 comments  •  flag
Share on Twitter
Published on April 04, 2022 14:34

Monte Carlo Sampling Techniques

In this article, we will explore the various Monte Carlo sampling techniques used in Probability and Data Science.

Table of contentsWhat are Monte Carlo techniques?Different Monte Carlo techniques for sampling
* Importance Sampling
* Rejection Sampling
* Markov chain Monte Carlo (MCMC) sampling

What are Monte Carlo techniques?

Monte Carlo techniques are a group of computational algorithms for sampling probability distributions in a random manner. These were first used to solve the complicat...

 •  0 comments  •  flag
Share on Twitter
Published on April 04, 2022 14:18

Dapper in System Design

In this article, we have explored what is Dapper, key concepts in Dapper and how Dapper is used in System Design.

Table of contents:

Introduction to DapperDesign PrinciplesDistributed tracing in DapperTrace collection processGeneral purpose Dapper toolsUsage of DapperIntroduction to Dapper

Dapper is a distribution tracing solutions developed by Google to provide their developers with more information about the behavior of complex distributed systems. Distributed systems are difficult to ...

 •  0 comments  •  flag
Share on Twitter
Published on April 04, 2022 14:06

Gated check in

A gated check-in is a software integration pattern used to avoid breaking a build. It triggers an automated build before code is checked in, if the build fails, it is not checked in until all issues are fixed, otherwise, it is merged to the main branch.

Table of contents.Introduction.How it works.Reasons for gated check-ins.Issues with gated check-ins.Summary.References.Introduction.

A gated check-in also referred to as gated commit or pre-tested commit is a commit with a condition. It ...

 •  0 comments  •  flag
Share on Twitter
Published on April 04, 2022 12:08

April 3, 2022

Types of System Testing

System testing is the third phase of software testing in the software testing hierarchy, other phases are unit testing, integration testing and acceptance testing. In this article, we learn about system testing, the process of system testing, the different types of system testing, and the reasons to perform system testing.

Table of contents.Introduction.Test plan.System testing process.Types of system testing.Reasons for system testing.Summary.References.Introduction.

System testing is...

 •  0 comments  •  flag
Share on Twitter
Published on April 03, 2022 13:55

Nightly / Daily build

A nightly build is an automatic build that takes place when nobody is around, usually at night or during lunch hour. It is automated by a script that ensures no bugs were introduced and all dependencies are available.

Table of contents.Introduction.When we might need nightly builds.How to perform a nightly build.Advantages of nightly builds.Summary.References.Introduction.

A nightly build is an automatic build that takes place when nobody is around, usually at night. This build comprise...

 •  0 comments  •  flag
Share on Twitter
Published on April 03, 2022 13:43

virtualenvwrapper in Python

virtualenvwrappervirtualenvwrapper is an addition to the standard virtualenv tool. It streamlines the process of managing your virtual environments by having wrappers for creating and deleting virtual environments and more.Some of the other features are the following.Tab completion for commands.Configurable hooks on all operations.Plugin system.Table of contents Why use virtual environments? Why use virtualenvwrapper over virtualenv? Getting started Demo Review ...
 •  0 comments  •  flag
Share on Twitter
Published on April 03, 2022 09:21

April 2, 2022

Functional testing

In functional testing, we test software to ensure that it fulfills all functional requirements as specified in the business document. In this article, we learn about functional testing, why we should test the functionality of an application, the process of testing, types of testing, and some of the tools used for functional testing.

Table of contents.Introduction.Why test?Functional testing process.Types of functional testing.Functional testing tools.Summary.References.Introduction.

Fu...

 •  0 comments  •  flag
Share on Twitter
Published on April 02, 2022 03:57

Black box vs White box testing

Testing software is the fifth phase in the Software Development Life Cycle(SDLC). We test software to ensure safety, security, product quality, no bugs are present, usability, etc. In this article, we learn about black box and white box testing.

blackbox

Table of contents.Introduction.Black box testing.White box testing.Comparison: Black box vs White box testingSummary.References.Introduction.

In black-box testing, we perform tests without any knowledge of the internal functioning of the applic...

 •  0 comments  •  flag
Share on Twitter
Published on April 02, 2022 03:44