Blog Posts

The Decoded String at Index using Java

June 4, 2020

The Challenge An encoded string S is given. To find and write the decoded string to a tape, the encoded string is read one character at a time and the following steps are taken:


Read More

Timing Issues in Real-time systems

June 3, 2020

What are Real-time Systems? If you look up the term “real-time” in a dictionary, it will tell you that it is the actual time during which a process takes place or an event occurs (Dictionary.


Read More

Find the Minimum Absolute Difference in BST using Java

June 2, 2020

The question Given a binary search tree with non-negative values, find the minimum absolute difference between values of any two nodes.


Read More

Get the Second Highest Salary in MySQL

June 1, 2020

The problem Write a SQL query to get the second highest salary from the Employee table.


Read More

Find Maximum Subarrays using Java

May 31, 2020

The problem Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.


Read More

Finding Number Complements using Java

May 30, 2020

The problem Given a positive integer num, output its complement number.


Read More

Forensic Analysis on Linux (Unix)

May 29, 2020

Operating Systems come in a few competing choices, of which the major players are Apple’s MacOS, Microsoft’s Windows and then the various flavours of Linux, of which most are open-sourced while the remainder are proprietary to their vendors.


Read More

Self Dividing Numbers using Python

May 28, 2020

Introduction A self-dividing number is a number that is divisible by every digit it contains.


Read More

RuntimeError: thread.__init__() not called (Python)

May 27, 2020

Today I got a really dumb error from Python. RuntimeError: thread.


Read More

All About Distributed Databases

May 26, 2020

A database “is a structured collection of data. Card indices, printed catalogues of archaeological artefacts and telephone directories are all examples of databases”.


Read More

Network systems security risks

May 25, 2020

Networking has played a vital part in the transfer of information as well as the accessibility of information that was never available to previous generations with the rapid increase of internet-connected devices.


Read More

Communications and The Software Development Process

May 24, 2020

Software Engineering or the Software Development Process is broken down into the following phases.


Read More

Get the total size of all the files in a directory

May 23, 2020

It’s amazing how many times I’ve need to find out the total size of all the files in a directory on one of our servers.


Read More

Structured and Object-Oriented Programming

May 22, 2020

Software development has really come a long way over the past few decades.


Read More

Moving a MySQL Database without downtime

May 21, 2020

At Statvoo Analytics we found ourselves in the position where we needed to move our master MySQL database without ANY downtime and for anyone who’s tried to do this, you will know how hard this can be if it is not done exactly right.


Read More

How to use Google Analytics in AngularJS

May 20, 2020

It seems to be quite a popular question with not as many answers to hold the weight.


Read More

Converting from Legacy to Client-Server or Distributed Systems

May 19, 2020

What is a legacy system? A legacy system is a computing system that has been around for a very long period of time, tends to be difficult to maintain, is prone to issues such as lack of scalability and feature additions, usually centralised in operation and is still heavily utilised in a particular organisation.


Read More

Conceptual Architectural Views, with a focus on the Development View

May 18, 2020

What is Conceptual Architectural Views? Architectural views are abstractions, or simplifications, of the entire design, in which important characteristics are made more visible by leaving details aside.


Read More

Assessing Reusable Parts in a Software Architecture

May 17, 2020

During the Software Development Life Cycle (SDLC) the development team will come to realise that parts of any application have already been created before and there is the potential for those parts to be reused time and again going forward.


Read More

An Introduction to 2-Tier and 3-Tier Client-Server Systems

May 16, 2020

All software systems can be grouped in either a 2-tier or a 3-tier formation.


Read More