Whilst I was writing this, I thought of looking up the concept on Wikipedia and, to no surprise, there were different interpretations of the concept in different fields. Yet, it was interesting to see how easy it was to relate the different interpretations.

Abstraction in what we are concerned with is simply explained to us in class as “a process of hiding details of implementation in programs and data”. I find it most easily understood by reflecting on how we use the internet. Seriously, can you imagine that at the touch of a finger, a processor registers what action you made, requests appropriate material from other computers by sending a digital signal, which goes through the cables of your ISP’s router and then to network towers and then to larger data centers and all the way back? and you just get to enjoy an uninterrupted experience? It’s no less than magic what we have achieved with the power of fourier transforms, signal processing technquies, and some rocks!