Recap (Winter 2018)

Image source:


    Hello its a me again drifter1! Another wonderful Steemtastic Year is passing by. I hope that all your dreams and passions will finally be fulfilled in the new year, and that this new year will be full of love, happiness and most importantly good health! This year was clearly something. We were in a bear-market, but could spend our hardly worked money of 2017 :P and earn money for the future, that might be 2019! After so many months it's also time for a Recap..So, let's get into a recap, where I will as always split the articles into categories!



     Let's start out with my first Category called Programming and split it based on the programming languages that I covered!



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)

Some more Graph Algorithms are still about to come...


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)

This category is about to get some "new" languages soon :P


Image source:


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


VHDL Introduction

VHDL Basic Coding Structure

VHDL Basic Circuits

VHDL Modelsim Getting Started Tutorial

VHDL Behavioral, Dataflow and Structural Models

VHDL Sequential Circuits

VHDL Testbench and Datatypes

VHDL Finite-State Machines

VHDL Coffee FSM Example

Simple ALU Circuit Project in 3 parts:

VHDL Simple ALU Circuit(part 1)

VHDL Simple ALU Circuit(part 2)

VHDL Simple ALU Circuit(part 3)

Simple FPGA Design using Quartus in VHDL

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)

    More such projects are in plan, but I will try to post them in standards by creating github repositories for each of them. Also, Verilog (or SystemVerilog as some call it), might also be a nice little HDL programming series, which will be similar to the VHDL series. Lastly, VLSI Design or even Computer Architecture are also in my list for "Hardware"-Stuff...


Image source:

     In this category are programming posts in C and Java that have to do with Inter-process or Inter-network communication. I use Linux for the C posts and get into everything you need to get started with Socket programming. In Java we simply get into how the Java Networking API works in some simple examples. I also started with Distributed algorithms using MPI, which is something that I want to get back to soon :)


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)

     More algorithms implemented using MPI (and maybe even as comparison with threads also) are about to come out and I'm also thinking of getting into actual Network(ing) theory!


Image source:

     This category is all about maths...Here we get into all the basic and more advanced concepts of many different branches of math. I know that many of you hate and/or are scared of math, but I will try to make everything seem as simple as possible, so that you only get to know what you actually need. Through this you will be able to these advanced mathematics in Physics and mainly Game Design/Development, which needs advanced Maths/Physics if you want to will also get into how we use it in computer science or information technology Code everything on your own!

Let's split the posts based on the branch... 

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


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

Linear Algebra Method for solving Differential Equations

All about...:

      In these gigantic posts I explain everything about some topic of Maths that may habe been covered as a series already or not!

All about Complex numbers
One such article in plan has to do with Trigonometry!

Branches of math that I'm thinking of covering are:

  • Signals and Systems
  • Number Theory
  • Probability
  • Statistics
  • Arithmetic Methods
  • ...


Image source:

    In this category we get into different Branches of Physics. For each branch there is lot's of theory explained in an in-depth way and even posts that contain only examples/exercises for the different concepts, theorems and so on (which I might change from now on though...). This means that you will understand everything easily and will also know how to apply it on very descriptive problems! 


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

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

Conservation of Energy

Work and Kinetic Energy

Conservative and Non-Conservative Forces

Potential and Mechanical Energy

    We still have a lot to talk about in Classical Mechanics! I am just caught up with the compiler project!


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

More branches in plan are:

  • Classical Mechanics (getting back to it to finish off)
  • Thermodynamics
  • Relativity
  • Quantum Mechanics
  • Optical Physics
  • Atomic and Molecular Physics
  • Particle Physics
  • Nuclear Physics
  • Cosmology (Astrophysics)

Writing a simple Compiler on my own


  This is a series where I write my own compiler for a simple C-like language using the C-tools Flex and Bison and explaining any compiler theory needed in between! This series takes up a lot of time and so I ended up making posts about this and only this topic for a while now!

General Knowledge and Lexical Analysis

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)
  • Finishing Off The Grammar/Parser (part 2)
  • Semantic Analysis (1)

  • Semantic Analysis Theory
  • Semantics Examples
  • Scope Resolution using the Symbol Table
  • Type Declaration and Checking
  • Function Semantics (part 1)
  • Function Semantics (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)
  • Action Rules for Function Declarations (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)
  • Revisit Queue and Parameter Checking (part 2)
  • Revisit Queue and Parameter Checking (part 3)
  • Revisit Queue and Parameter Checking (part 4)
  • The posts that will follow will have to do with:

    • More stuff around Semantics
    • Machine code generation (MIPS Assembly)

    After that we can also do Optimizations, Extensions and more if you like :)

    What's next?

    Other new "series" that are in plan are:

    • Web Development series in HTML, CSS, Javascript, php and SQL, under a new Category called "Web Dev"
    • The languages C#, Python, ... under Programming
    • Artificial intelligence -> Theory and Programming implementation, which means that this series might be a part of "Programming"
    • Parallel programming in OpenMP, CUDA, OpenCL, ..., maybe in a new category of "Parallel Programming", but we will see
    • Databases for the Web Dev series
    • Game development in Unity (that's why C# is in this list) or Unreal Engine

    And this is actually it for this article and I hope that you enjoy such Recaps!

    3 columns
    2 columns
    1 column