The Power Of The Future Is Rooted In The Past

First programming languages were written in the 1950s, long before our modern day ide software was even a twinkle in the eye of the most forward-thinking minds. Those early languages were very close to the hardware. Instructions were extremely unsophisticated and were almost one-to-one conversions of a circuit’s purpose: load value, multiply value, subtract value. In fact, multiplication was achieved by simply adding a value multiple times so “4 multiplied by 3” was really “load 4, add 4 to that, add 4 to the result, print the result“.

The Power Of The Future Is Rooted In The Past

In essence, the programming language was a series of grunts used to communicate those absolute essentials to the computer to get the work done. Was it a language? Of sorts, yes, but only really a step away from a traveler stranded in a foreign country gesticulating wildly with hand signals at a bar tender in order to get the drink they want.

It was a struggle. It was arduous and error prone even though the hardware limitations meant the actual quantity of instructions which could be fed to the hardware were tiny by today’s standards. Programmers were speaking the language of the computer to make the computer’s life easier. We grunted, they understood. It was magical.

What is a high-level computer language?

hat is a high-level computer language? Margaret Hamilton
Margaret Hamilton with the code she and her MIT team produced for the Apollo project. Source: WikiMedia Commons

This onerous and laborious level of communication endured for a few years. Even by the time of the first moon landings the instructions were still designed to make the job easy for the computer with little or no deference to the ease of human comprehension. The capacity for the computer’s instruction store – where it put actual “what should I do” had massively increased but you still had to be something akin to a superhuman to write code which worked reliably. No wonder that time spawned so many comparisons of programmers to wizards and warlocks!

Of course, the time came when a push towards making programming languages more human friendly arrived. Algol, Fortran, COBOL and C all broken new ground in abstracting those LOAD, STORE, SHIFT LEFT and ROTR computer-edible instructions into something more palatable for human programmers to consume. The shift from wizards and warlocks towards more regular humanity had begun.

What happened to computer programming in the 1980’s?

The 1980s were a huge boom time. That early abstraction of computer instructions in the “high level” languages such as BASIC and COBOL had gone a long way to making programming more accessible. The advent of the semiconductor and advances in miniaturization brought about programmable calculators, the first digital watches and, eventually the first personal computers which freed computing from the enormous room-sized behemoths of the ’60s and ’70s to a box which could be plugged into an ordinary power supply and would fit on the average office desk.

Now, in theory at least, everyone could have a computer. Computing was personal.

Why did the personal computer spawn a new era in computer languages?

The invention of ‘personal’ computing meant that suddenly the possibility of writing and using computer programs could spread to ‘normal’ people. It was no longer constrained to the environs of huge corporations with development staff who were university-trained at great expense. The ordinary individual could write code for the personal computer as long as they studied the available computer languages. The open nature of the IBM PC and ingenuity of their competitors meant a great quantity of consumer-level personal computers spawned and evolved. The computer programming languages became less tied to a specific hardware configuration. General purpose computing was enabled and accompanied by general purpose computer languages such as C, SmallTalk even things like LISP and the well-loved Apple HyperCard.

Why was object-orientated programming invented?

That progression of programming languages from the early computing Stoneage grunts of punched cards and close-to-the-metal machine instructions to the high-level more humanlike languages such as BASIC and C had come a long way. But the exponential advances in hardware power meant that users demanded more and more sophistication from their programs, and this meant that the job of creating those programs using traditional procedure “do this, now do that” development paradigms was beginning to creak at the seams.

A new way of “telling computers how to do things” was needed, one which better mapped the real-world into structures within the code in ways which had much higher levels of abstraction. Programmers called this new way of programming “object-oriented programming”. Now, instead of step-by-step instructions which described the program’s possible interactions and activity, the code described things such as “a customer object” and how that “customer object” had ‘properties’ like a set of recent purchases, an address, other customer objects to whom they were related and so on. Programmers wrote code to define the behavior of the customer object based on certain interaction events and the properties it possessed rather than a set of more linear instructions. A customer object could have a credit limit property, for example. It did not define what that property did – merely that it had one and what the value of it was. Now that customer object could be used in a debt collecting routine, a purchasing routine or a credit limit review routine without any changes and without the customer object’s behavior needing to change.

What make C++ an object orientated language?

In the 1980s, the C++ programing language was developed by expanding on the earlier idea of “C with classes”. C++ was a combination of object-oriented and older style procedural programming. It is extremely versatile and includes the ability to write very high-level object orientated abstract code as well as very low-level “close to the metal” code. Even today, many drivers are written in C++. Languages developed in this age are called fifth-generation programming languages. The improvements in the processing power in this age backed the improvement of high-level programming languages.

The rapid growth of the internet was a great opportunity to improve programming languages. In this age, some web browsers supporting programing languages were invented including JavaScript and PHP. Also, older programing languages were updated and even renamed to reflect new trends in programming language design. This age also focused on the productivity and efficiency of the programmer. Those languages were object-oriented such as Object Pascal and Delphi. Rapid Application Development became a key ideal – with techniques and an environment to write code not just with fewer errors but also more quickly and efficiently. This push toward efficiency gave rise to the IDE – and integrated development environment which provided an ‘intelligent’ tool with which to write, test and debug the program code, lay out the visual screen elements and to compile or build the resultant programs into ‘deliverables’ which were suitable for ordinary users to install. 

The Power Of The Future Is Rooted In The Past. Things have changed

Why were IDEs popular?

At that age, Delphi was the choice if someone want to deal with the almighty Oracle databases which were – and still remain – extremely popular with larger companies. The first version of Delphi came in 1995. It was very effective even at that time of nascent computer hardware technology and a new-born internet because it could (and still can) compile to native code very fast. CRAZY fast. Delphi is based on Object Pascal while Object Pascal is based on Algol which is the first high-level and readable programming language. In the sixties, many successors to Algol were introduced. But the most popular one was Pascal which is introduced by Prof. Niklaus Wirth. Pascal inherited from many other languages in that time such as Algol and Cobol. Pascal added the functionality to make more complex data types from existing ones. At that age, Pascal was a popular tool for teaching programming.

What is Delphi and what can it do?

In 1995 Borland introduced a new version of Pascal “with objects” and named it Delphi. It was an extension to the powerful Pascal language, specifically Object Pascal. Due to a profoundly inciteful decision-making process it had great market-leading database support from the very beginning. It still can talk to any flavor of database system available on the market today regardless of whether it is traditional RDMS such as DBASE, a SQL system such as MySQL, PostgreSQL, SQL Server – or even NOSQL solutions such as MongoDB. It can create web apps, iOS apps, Android apps, Linux, Mac and, of course, Windows apps. It is the toolkit of choice for virtually every type of app you could want, not just for databases. Delphi is well supported for all of the Windows components.

The first version of Delphi had great support for Client/Server architecture right out of the box. It was the only solution for rapid application development and with visual component-based design. The second version of Delphi, it supported Win32, database grids, OLE, and many more. In the third version of Delphi, Client-server architecture support was improved. In the third version of Delphi, code insight was introduced, which improved the rapid application development. Also, the third version introduced the DLL debugging, TeeChart which is still an industry-leading chart component, and many more. It still is the low-code solution to pretty much every requirement you could have in software development. It inherits the low-level abilities of the pioneer days of coding, learned to keep complicated things understandable from early Pascal days where the there was a need to teach coding to those who needed to learn, stands on the shoulders of the 1980s innovations and helps us see far into the future with rock-solid stable programs which run and keep running.

Why not download a free trial version of Delphi and see for yourself why it is the answer to your needs?

Python GUI Development