Difference between C++, C and C#

It helps to think of programming languages in terms of how closely they are able to control what a computer is actually doing.  These are commonly classified as low-, intermediate- and high-level programming languages.  Computers execute machine code, and assembly language is considered the lowest level programming language; it is a human readable version of machine code.

C was created to provide a structural programming language that is easier to use than assembly.  It is considered a low-level programming language with little to no loss in performance relative to assembly.  This made C the natural choice for building operating systems and low-level software on computers because it allowed for easier development at near-assembly performance.

C++ is essentially an extension of C. The original C++ compilers just pre-compiled directly into C, which was then compiled to machine code, while modern C++ compilers can easily compile C or C++ into machine code.  C++ was designed to allow developers to use all of the existing features of C but provides a number of extensions to support object-oriented programming techniques in an intermediate-level programming language.

C# is a complete outlier in this list.  Despite it’s name, it has far more in common with Java than C or C++.  C# is an object-oriented, high-level programming language.  Like Java, C# provides a number of features to make it easier for a developer to code in this language such as type checking, bounds checking, uninitialized variable checking, and garbage collection.  While the language does not technically specify how it is executed, C# is most commonly compiled into byte-code (rather than machine code) and executes on a virtual machine (like Java) that converts the application into machine code on the fly.

Developers who are focused on performance still pick C or C++ as their language of choice.  Nearly all operating systems (kernel and low-level system software) are written in C, C++ or some combination of the two.  Most high-profile server and desktop software is also written in C++.  For example, most web browsers, office suites and games are written in C or C++.  C# remains a common choice for internal/enterprise applications but is less common forcommercial software.


Top Ten Most Successful Programmers/Developers

Top Ten Most Successful Developers

From starting and owning businesses to creating languages, developers have traditionally been successful, there is practically no limit to what they can accomplish. 

Here’s the  Top 10 Most Successful Developers

#1 Bill Gates

Bill Gates is the most successful developer on the list. Gates, with the help of Steve Ballmer, created Microsoft in 1975 using his knowledge of development and programming. As the former CEO of Microsoft with a net worth of $79 billion, there is no disputing that Bill Gates knows what he’s doing.

#2 Steve Wozniak

Steve Wozniak was a cofounder of Apple alongside Steve Jobs. Early on Wozniak was employed at Hewlett-Packard, where Jobs worked alongside him, creating mainframe computers. Woz was the technical brain of the two; he went on to single-handedly develop the Apple I in 1976. He also oversaw the design of the Apple II in 1977.

#3 Ada Lovelace

Ada Lovelace was the first programmer. She’s known for her work on the Analytical Engine, which is recognized as the first algorithm created with the intent to be processed by a computer. This means that Lovelace created the first ever computer program.

#4 Dennis Ritchie

Dennis Ritchie is credited for pioneering the digital era. He created the C programming language, which influenced most modern programming languages and is still used today. Ritchie also co-created the UNIX OS.

#5 Mark Zuckerburg

When Mark Zuckerberg was 20 years old he created Facebook. At the start, Facebook was only for Harvard students, now it boasts 1.44 billion monthly active users. Now Zuckerberg is worth $34.8 billion and has acquired companies like Instagram and WhatsApp.

#6 Sergey Brin

Sergey Brin is a computer scientist who co-founded Google with Larry Page. He’s owns 16% of google and has a net worth of $30 billion. Brin created a data mining system that eventually became Google.

#7 Lawrence Ellison

Lawrence Ellison was the CEO and co-founder of Oracle Corporation. Oracle is a database company that originally included databases for the CIA. Ellison has a net worth of $54 billion and is now the CTO and an executive chairman of Oracle.

#8 Larry Page

Larry Page is the second half of Google; he co-founded it with Sergey Brin. Page also owns 16% of google and has a net worth of $30 billion. Him and Brin met at Stanford and built Google in their dorm before finally launching it in a garage.

#9 Linus Torvalds

Linus Torvalds is a software engineer who was the driving force behind the development of Linux. In 2012 he was honored with the Millennium Technology Prize by the Technology Academy of Finland due to his creation of a new open source OS for computers worldwide. Additionally he received the 2014 IEEE Computer Society Computer Pioneer Award.

#10 Tim Berners Lee

Tim Berners Lee was the inventor of the World Wide Web. In 1989 he proposed an info management system. Later on Lee implemented the first successful communication between a HTTP client and server over the internet. Currently he oversees the Web’s continued development as the director of the W3C (World Wide Web Consortium).

If we left somebody out let us know who they are in the comments! There are a lot of role models in programming to look up to. Anything is possible in the tech world; make it a point to become a part of this list.