Bedrock of Software – Part 2: C and Unix – A Symbiotic Relationship

The best way to describe the relationship between C and Unix will be mutual evolution. Both were developed at Bell Labs and each played a unique role in the other's success. This symbiotic relationship not only led to the widespread adoption of both C and Unix but also set the foundations of modern computing. Or computing as we know it. Unix began as a small project led by Ken Thompson and Dennis Ritchie at Bell Labs. Remember, Dennis Ritchie is also the inventor of C programming language. The primary principle was to be a simple, multi-tasking, multi-user operating system. In…

Read More

Bedrock of Software – Part 1: The Origins of C

In the world of software engineering, there is a constant change. Anything we learn has a potential to get redundant just in a matter of years. A lot of languages, methodologies, techniques, tools, frameworks, libraries came in with a huge noise and went away silently. Very few things manage to live for a decade. However, there is one thing which has been there for more than half a century, and remained unchanged. It is the core of all operating systems, and also all compilers and interpreters of unexceptionally all programming languages, and it is also the father of almost all…

Read More

Rust: A Modern Time Challenger to C++

For developers of my generation, C++ was the go-to language. It was everywhere, especially when you needed to write code that is fast, efficient and object oriented. C++ gave us the control we need to use every bit of performance and also extendable language to adapt modern programming techniques. We didn't really think that one day there would be another language that could ever challenge C++ in what it did best. To me, C++ is still the king of all programming languages. However, Rust is not a rival to undermine. In this blog post we will see some details about…

Read More