Recap (2021)

Image source:


Hello its a me again @drifter1!

After so many years, I thought that such an article was needed again. Of course, anything that was posted originally on the STEEM Blockchain will have a link towards Steemit...

So, let's get into a recap, where I will as always try to split the articles into categories, in the best way possible!




C Beginner Codes

C Beginner Arrays

C Pointers, String and Files

C Dynamic Memory Allocation

C Structs and Switch Case


C Recursive Algorithms

C Linked Lists

C Binary Trees

C Queues using Arrays

C Stacks using Arrays

C Queues using Linked Lists

C Stacks using Linked Lists

C Advanced Lists and Queues

C Advanced Trees

C Stack-Queue Exercise using Dynamic Arrays

C Stack-Queue Exercise using Linked Lists

C Hashtables with Chaining

C Hashtables with Linear Probing


Can I run a Dual Monitor Setup? (C Code)

C Function Comparison



From C To Java

Java Classes and Methods

Java Composition and ArrayList

Java Inheritance

Java Interfaces

Java Exceptions

Java Files

Java All-In-One Exercise

Java All-In-One Exercise (Solution)

Data Structures

Java Data Structures

Java Graphs Introduction

Java Graph Traversal Algorithms

Java Graph Minimum Spanning Tree Algorithms

Java Graph Shortest Path Algorithm (Dijkstra)

Java Graph Shortest Path Algorithm (Bellman-Ford)

Java Graph All Pair Shortest Path Algorithms (Floyd-Warshall/Johnson)

Java Graph Maximum Flow Algorithm (Ford-Fulkerson)

Java Graph (Backtracking) Hamiltonian Circuit Algorithm

Java Graph Eulerian Circuit Detection Algorithm

Java Graph Minimum Spanning Tree Algorithms 2

Java Graph Coloring Algorithms (Backtracking and Greedy)


Java GUI (awt)

Java GUI (swing)

Java GUI Events and Listeners

Java GUI Examples

Java All-In-One Exercise Extended

Java All-In-One Exercise Extended (Solution)

Java Web Applets



Assembly Basic Coding Structure

Assembly Input/Output Calls

Assembly Branches and Jumps

Assembly Arrays and Memory Instructions

Assembly Code Examples


Assembly Functions and Pseudodynamic Arrays

Assembly Stack and Recursive Algorithms

Assemly Heap Memory Allocation

Assembly File Inputs/Output Calls

Assembly Stack Datastructure

Assembly Floating Point Register Example (Trading Profit Calculator)



Numeral Systems

Logical (Boolean) Functions

Boolean Algebra and Simplification Theorems

Karnaugh Map Simplification

Basic Logic Gates

Universal Logic Gates

From Function to Circuits using Multi-Input Gates

Adder Circuits

Multiplexer, Encoder and Decoder Circuits

Waveforms and Clocks

Latches and Flip Flops

Sequential (Synchronous) Circuits

Quine McCluskey (Tabular) Simplification Method

Statetable Simplification and Implementation with one-hot encoding

Binary Decision Diagrams

Multisim Implementation

Multisim Getting Started Tutorial

Logic Gates in Multisim

Simple Circuits in Multisim

Adder Circuits in Multisim

Multiplexer, Encoder and Decoder Circuits in Multisim

Advanced Sequential Circuits in Multisim



Basic Coding Structure

Basic Circuits

Modelsim Getting Started Tutorial

Behavioral, Dataflow and Structural Models

Sequential Circuits

Testbench and Datatypes

Finite-State Machines

Coffee FSM Example

Simple ALU Circuit : [part 1] [part 2] [part 3]

Implementing modulo2 multiplication of line with matrix Project:

How to write simple RAM in VHDL

How to write simple ROM in VHDL

Implementing modulo2 multiplication of line with matrix in VHDL (part1)

Implementing modulo2 multiplication of line with matrix in VHDL (part2)

Implementing modulo2 multiplication of line with matrix in VHDL (part3)

Implementing modulo2 multiplication of line with matrix in VHDL (part4)



Combinational Logic

Combinational Logic Examples

Sequential Logic

Sequential Logic Examples

Finite-State Machines


Simple FPGA Design using Quartus in VHDL

Simple FPGA Design using Xilinx ISE 14.7



C Processes in Linux

C Threads in Linux

C Process/Thread Synchronization in Linux

C Inter-Process Communication in Linux

C Signals and Signal Handling in Linux

C Classic Synchronization Problems in Linux

C Sockets in Linux

C Server-Client Communication in Linux

C Server-Client Kinds in Linux


Java Threads and Synchronization

Java Sockets and Server-Client Communication


Distributed algorithm for Routing (Toueg)


Linear Algebra:

Linear Algebra Introduction

Linear Algebra Gauss Method

Linear Algebra Inverse Matrix and Determinants Linear Algebra Vector Spaces

Linear Algebra Combinations and Independence

Linear Algebra System Examples

Linear Algebra Functions

Linear Algebra Function Matrix and Special Cases

Linear Algebra Eigenvalues and eigenvectors

Linear Algebra Function Examples

Mathematical Analysis:


Mathematical Analysis Introduction (Functions)

Mathematical Analysis Functions II

Mathematical Analysis Limits and Continuity

Mathematical Analysis Continuity II

Mathematical Analysis Limit Solving Examples (with roots)

Mathematical Analysis Derivatives

Mathematical Analysis Differentiation Theorems

Mathematical Analysis Indefinite and Riemann Integrals

Mathematical Analysis Integration by Substitution Technique

Mathematical Analysis Integration by Parts Technique

Mathematical Analysis Integration Techniques for Rational Functions

Mathematical Analysis Integration Techniques for Trigonometric Functions

Mathematical Analysis Integral Applications and Examples

Mathematical Analysis Sequence Basics

Mathematical Analysis Subsequences and Convergence

Mathematical Analysis Special Sequences and Divergence

Mathematical Analysis Series Basics

Mathematical Analysis Series Convergence Tests

Mathematical Analysis Series Convergence Examples

Mathematical Analysis Power Series

Mathematical Analysis Taylor and Maclaurin Series

Mathematical Analysis Fourier Series


Mathematical Analysis Vectors, Lines and Planes

Mathematical Analysis Advanced Plane Types

Mathematical Analysis Multivariable and Vector Functions

Mathematical Analysis Partial Derivatives

Mathematical Analysis Directional Derivatives

Mathematical Analysis Total Differential

Mathematical Analysis Double and Multiple Integrals

Mathematical Analysis Surface and Contour Integrals

Mathematical Analysis Multivariable examples

Differential equations:

Differential equations Introduction

Ordinary first-order Differential equations (part 1)

Ordinary first-order Differential equations (part 2)

First-order Differential equation exercises

Linear second-order Differential equations with constant coefficients

Euler, Wronsky and Canonical linear second-order Differential equations

Second-order Differential equation exercises

Laplace method for solving Differential equations

Differential equation exercises for the Laplace method

Signals and Systems:



Signal Basics

Signal Operations with Examples

System Classification with Examples

Sinusoidal and Complex Exponential Signals

LTI Systems and Convolution

LTI System Response and Convolution

LTI Convolution Properties

System Representation in Discrete-Time using Difference Equations

System Representation in Continuous-Time using Differential Equations

Exercises on LTI System Properties

Exercise on Convolution

Exercises on System Representation using Difference Equations

Exercises on System Representation using Differential Equations

Fourier Series and Transform

Continuous-Time Periodic Signals & Fourier Series

Continuous-Time Aperiodic Signals & Fourier Transform

Continuous-Time Fourier Transform Properties

Discrete-Time Fourier Series & Transform

Discrete-Time Fourier Transform Properties

Exercises on Continuous-Time Fourier Series

Exercises on Continuous-Time Fourier Transform

Exercises on Discrete-Time Fourier Series and Transform

Filtering, Sampling, Modulation, Interpolation


Continuous-Time Modulation

Discrete-Time Modulation



Processing Continuous-Time Signals as Discrete-Time Signals

Discrete-Time Sampling

Exercises on Filtering

Exercises on Modulation

Exercises on Sampling and Interpolation

Laplace and Z Transforms

Laplace Transform

Laplace Transform Properties

LTI System Analysis using Laplace Transform

Exercises on the Laplace Transform

Z Transform

Z Transform Properties

LTI System Analysis using Z Transform

Exercises on the Z Transform

Continuous-Time to Discrete-Time Design Mapping

Butterworth Filters

Linear Feedback Systems

Exercises on Linear Feedback Systems


Collaborative posts that fit to more then one category...

Linear Algebra Method for solving Differential Equations

All about...:

All about Complex numbers

All About Trigonometry : [part 1] [part 2] [part 3] [part 4]



Physics Introduction

Vector Math and Operations

Classical Mechanics

Rectlinear motion

Velocity and acceleration in a rectlinear motion

Rectlinear motion with constant accelaration and free falling

Rectlinear motion with variable acceleration and velocity relativity

Rectlinear motion exercises

Plane motion

Position, velocity and acceleration vectors in a plane motion

Projectile motion as a plane motion

Smooth Circular motion

Plane motion exercises

Newton's laws and Applications

Force and Newton's first law

Mass and Newton's second law

Newton's 3rd law and mass vs weight

Applying Newton's Laws

Contact forces and friction

Dynamics of Circular motion

Object equilibrium and 2nd law application examples

Contact force and friction examples

Circular dynamic and vertical circle motion examples

Advanced Newton law examples

Work and Energy

Work and Kinetic Energy

Conservative and Non-Conservative Forces

Potential and Mechanical Energy

Force and Potential Energy

Potential Energy Diagrams

Internal Energy and Work

Momentum and Impulse

Conservation of Momentum

Elastic and Inelastic Collisions

Collision Examples


Motion of the Center of Mass

Explaining the Physics behind Rocket Propulsion

Angular Motion

Angular motion basics

Rotation with constant angular acceleration

Rotational Kinetic Energy & Moment of Inertia

Parallel Axis Theorem

Torque and Angular Acceleration

Rotation about a moving axis (Rolling motion)

Work and Power in Angular Motion

Angular Momentum

Explaining the Physics behind Mechanical Gyroscopes

Exercises around Angular motion

Equilibrium and Elasticity

Rigid Body Equilibrium

Force Couple System

Tensile Stress and Strain

Volumetric Stress and Strain

Cross-Sectional Stress and Strain

Elasticity and Plasticity of Common Materials

Rigid Body Equilibrium Exercises

Exercises on Elasticity & Plasticity


Newton's Law of Gravitation

Weight: The Force of Gravity

Gravitational Fields

Gravitational Potential Energy

Exercises around Newtonian Gravity (part 1)

Exercises around Newtonian Gravity (part 2)

Explaining the Physics behind Satellite Motion

Kepler's Laws of Planetary Motion

Spherical Mass Distributions

Earth’s Rotation and its Effect on Gravity

Black Holes and Schwarzschild Radius


Electric field and charges

Getting into Electromagnetism

Coulomb's law with examples

Electric fields and field lines

Electric dipoles

Electric charge and field Exercises

Electric flux

Electric flux and Gauss's law

Applications of Gauss's law (part 1)

Applications of Gauss's law (part 2)

Electric flux exercises

Electric potential

Electric potential energy

Calculating electric potentials

Equipotential surfaces and potential gradient

Millikan's Oil Drop Experiment

Cathode ray tubes explained using electric potential

Electric potential exercises (part 1)

Electric potential exercises (part 2)


Capacitors (Condensers) and Capacitance

How to solve problems around Capacitors

Electric field energy and density

Dielectric materials

Electric capacitance exercises

Current, resistance and EMF

Electric current

Electrical resistivity and conductivity

Electric resistance

Electromotive Force (EMF) and Internal resistance

Power and Wattage of Electronic Circuits

Electric current, resistance and emf exercises

Direct current (DC) circuits

Resistor Combinations

Kirchhoff's laws with applications

Electrical measuring instruments

Electronic circuits with resistors and capacitors (R-C)

RC circuit exercises

Magnetic field and forces

Magnetic fields

Magnetic field lines and Gauss's law of Magnetism

The motion of charged particles inside of a magnetic field

Applications of charged particle motion

Magnetic force applied on Current-Carrying Conductors

Magnetic force and torque applied on current loops (circuits)

Explaining the Physics behind Electromotors

Magnetic field exercises

Magnetic field sources

Magnetic field of a moving charged particle

Magnetic field of current-carrying conductors

Force between parallel conductors and the magnetic field of a current loop

Ampere's law and Applications

Magnetic materials

Displacement current

Exercises in Magnetic field sources

Electromagnetic Induction

Electromagnetic Induction and Faraday's law

Motional Electromotive Force (Emf)

Lenz's law and Induced Electric fields

Eddy Currents and Applications

Maxwell's equations

Electromagnetic Induction exercises

Mutual and Self Induction

Mutual Inductance

Self Induction

Magnetic Energy Density

R-L circuits

L-C circuits

R-L-C circuits

Mutual and Self Induction exercises

Alternating current

Getting into Alternating current

Electric Reactance in AC circuits

Series R-L-C circuits Impedance

Power in AC circuits

Resonance in Series R-L-C circuits

Resonance in Parallel R-L-C circuits

AC Transformers

Alternating current exercises

Electromagnetic waves

Electromagnetic Wave Introduction

Sine waves and EM wave energy

Electromagnetic waves in matter

Standing Electromagnetic waves

Electromagnetic Spectrum

Antenna Radiation Patterns

Electromagnetic wave exercises

Writing a simple Compiler on my own

General Knowledge and Lexical Analysis


A simple C Language

Lexical Analysis using Flex

Symbol Table (basic structure)

Using Symbol Table in the Lexer

Syntax Analysis

Syntax Analysis Theory

Bison basics

Creating a grammar for our Language

Combine Flex and Bison

Passing information from Lexer to Parser

Finishing Off The Grammar/Parser : [part 1] [part 2]

Semantic Analysis (1)

Semantic Analysis Theory

Semantics Examples

Scope Resolution using the Symbol Table

Type Declaration and Checking

Function Semantics : [part 1] [part 2]

Intermediate Code Generation (AST)

Abstract Syntax Tree Principle

Abstract Syntax Tree Structure

Abstract Syntax Tree Management

Action Rules for Declarations and Initializations

Action Rules for Expressions

Action Rules for Assignments and Simple Statements

Action Rules for If-Else Statements

Action Rules for Loop Statements and some Fixes

Action Rules for Function Declarations : [part 1] [part 2]

Action Rules for Function Calls

Semantic Analysis (2)

Datatype attribute for Expressions

Type Checking for Assignments

Revisit Queue and Parameter Checking : [part 1] [part 2] [part 3] [part 4]

Revisit Queue and Assignment Checking : [ part 1] [ part 2] [ part 3]

Machine Code Generation

Machine Code Generation Principles

MIPS Instruction Set

Simple Examples in MIPS Assembly

full_example.c in MIPS Assembly : [part 1] [part 2]

Generating Code for Declarations and Initializations

Generating Code for Array Initializations and String Messages

Register Allocation & Assignment Theory

Implementing Register Allocation : [part 1] [part 2] [part 3] [part 4]

Generating Code for Expressions : [part 1] [part 2] [part 3]

Generating Code for Simple Statements

Generating Code for Assignments (part 1)

Electronic Circuit Simulation

Introduction and Electromagnetism Background


Electromagnetism Background (part 1)

Electromagnetism Background (part 2)

Mesh and Nodal Analysis

Mesh Analysis

Nodal Analysis

Modified Mesh Analysis by Inspection

Modified Nodal Analysis by Inspection

Modified Nodal Analysis

Incidence Matrix and Modified Kirchhoff Laws

Modified Nodal Analysis (part 1)

Modified Nodal Analysis (part 2)

Static Analysis

Static Analysis Implementation (part 1)

Static Analysis Implementation (part 2)

Static Analysis Implementation (part 3)

Sparse Matrix Optimization

Sparse Matrix Optimization (part 1)

Sparse Matrix Optimization (part 2)

Parallel Programming:



Parallel Regions

Parallel For Loops

Parallel Sections

Atomic Operations and Critical Sections


Locks and Barriers

SIMD Instructions

Device Targeting and Work Distribution



Thread Hierarchy

Memory Management

Atomic Functions and Synchronization


Dev Blog 1

Dev Blog 2

Dev Blog 3

Dev Blog 4

Dev Blog 5

Dev Blog 6

Dev Blog 7

Dev Blog 8

Dev Blog 9

Dev Blog 10

Dev Blog 11

Final Words

With so much content, I think this blog is turning into some kind of CS Univerisity. But, text posting has become quite boring and repetitive, I think. So, shall we get into videos and streaming? The diversity should be enhanced thoroughly that way. And, of course, re-writing older content whilst pushing it to the new website is also quite important...

Let's see how much I can keep this up! xD

Keep on drifting!

3 columns
2 columns
1 column
Join the conversation now