Learn Scientific Programming

The ‘Learn Scientific Programming’ project in 2016 started as an eLearning blog to demonstrate the use of scientific programming languages in processing Big data. https://learn.scientificprogramming.io/

In 2020, we’ve founded of the next generation learning platform for creating and delivering interactive and adaptive courses on Linux, Devops, HPC, scientific programming languages, including Data Sciences. https://scientificprogramming.io/

Who we are?

We are a team of Scientific Computing Professionals passionate about sharing skills with those who want to learn scientific coding techniques. …


The Object Oriented concept in Perl is very much based on references and anonymous array and hashes. Let’s start learning basic concepts of Object Oriented Perl.
Object Basics

In Perl, a package is a self-contained unit of user-defined variables and subroutines, which can be re-used over and over again. Perl Packages provide a separate namespace within a Perl program which keeps subroutines and variables independent from conflicting with those in other packages.

To declare a class named Person in Perl we do:

package Person;

Let’s create our constructor for our Person class using a Perl hash reference. When creating an…


Everyone wants to learn programming and there are a plenty online, but hardly you will find one course that takes you to the next level of programming: Introducing the “Scientific Programming with C++”.

You can now get this tutorial with advanced code playgrounds available at the Scientific Programming School.


Learn, play and code!

Do you wish to play with code playgrounds, interactive shell, animated videos, charts, illustrations on byte sized lessons? You are at the right platform! Welcome to the Scientific Programming School.

Awesome code playgrounds!

Learn with the most advanced code playground. With 50+ languages- all set for you from Python, C/C++ OpenMP, MPI, C#, Java, Perl to Matlab, R, Swift, Kotlin and so on, you don’t fiddle with SDKs and IDEs at this time!


Scientific Computing Essentials

The “Scientific Computing Essentials” is the first ever hands-on course on scientific computing utilizing High Performance Computing (HPC). The goal main of this course is to introduce you with the HPC systems and its software stack: Slurm, PBS, OpenMPI, MPI and CUDA.

The “Scientific Computing Essentials” course is available at the Scientific Programming School for only $10. PDF included!


Learn Scientific Programming

In the year 2017, we created the “Learn Scientific Programming” blog (originally initiated the project in 2016) on Medium to introduce students and researchers of all disciplines with the concepts of HPC systems and its software stack.

Medium is the most amazing platform in blogspheres started in the year 2012. Created with Node.js and a bunch of AWS technologies it offers the true writing experience for bloggers.

We published our first post “Introduction to High Performance Computing (HPC) Clusters”.

The idea was to publish tutorials to enable user to utilize parallel and distributed programming and computing resources. To help people…


We are introducing a Zoom live class lecture series on this course through which we will explain different aspects of the Parallel and distributed computing and the High Performance Computing (HPC) systems software stack: Slurm, PBS Pro, OpenMP, MPI and CUDA.

Live classes will be delivered through the Scientific Programming School , which is an interactive and advanced e-learning platform for learning scientific coding.


This is the first ever hands-on course for Python and Beautiful Soup (BS4) with live playgrounds. The Beautiful Soup (BS4) is a Python library for pulling data out of HTML and XML files. It works with your favorite parser to provide idiomatic ways of navigating, searching, and modifying the parse tree. It commonly saves programmers hours or days of work. It’s current version is BS4.9.


The Scientific Computing Essentials is the first ever hands-on scientific computing online course that supports playgrounds loaded with the High Performance Computing (HPC) systems software stack: Slurm, PBS Pro, OpenMP, MPI and CUDA!

For this course, we have created a small private virtual cluster with Docker technology. It has the following components:

  • slurmctld: master node/ login node
  • mysql and slurmdbd: database nodes
  • c1: compute node 1
  • c2: compute node 2

Slurm setup

We created a multi-container Slurm cluster using docker-compose on a Digitial Ocean droplet (ideally we would use multi-droplets). …

Scientific Programming Team

Instructor at the Scientific Programming School | ScientificProgrammer.me

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