↓ Skip to main content

Thoughts on Programming

·577 words·3 mins
πŸŒ€ Aashish Thoughts
Author
πŸŒ€ Aashish Thoughts
Fragments of thinking, experiments, and ideas that refused to stay in my head.

My thoughts on programming where we are and what can be the future of programming
#

History
#

let’s start from history how was programming back then,ofc I am not talking from my experience I am talking by taking reference from book programming ground up , computer only understand zeros and ones so it was quite a work considering today an era of programming by natural language. I have divided history of language in certain era described below.

Era of Machine Code
#

Early computers were programmed using raw binary instructions, directly controlling the hardware. Programs had to be written in sequences of 0s and 1s, which made it very error-prone and difficult.

machinecode

Era of Assembly Language
#

Assembly languages emerged as a symbolic representation of machine code, providing mnemonic codes for operations (e.g., ADD, SUB). It was more readable than binary but still closely mapped to machine instructions.

machinecode

Era of High level Language
#

High-level languages introduced much greater abstraction from hardware. They allowed developers to focus on solving problems without worrying about the intricacies of memory management and machine instructions.

Era of coding assistant
#

In this era that is present a lot of developer depends on llm like gpt,claude for assistance in programming. Programmer doesn’t need to know anything about hardware only thing they need to know is what can be done by computers and basic knowledge of the language.

My take
#

It is mind blowing how much we have progressed as a human being , to continue this we need to think from first principle we can’t take thing for granted , to create next greatest intelligent compiler we need to learn about the hardware which means first principle which includes all the transistors on and off ,gates, flip flops, register, memory cpu and how they combine to make a working computer and the same applies to any great invention that we are talking to make the next great thing we have to know the base to make greatest optimization and improve it.

Learning from the book i mentioned before
#

From this book called programming from ground up I learnt about computer architecture and assembly in general . Most of the modern computer follows The Von Neumann architecture which divides the computer up into two main parts - the CPU (for Central ProcessingUnit) and the memory. And programming is about using this resources and providing instruction to computer what we want to do in very detailed manner. Computer does what it is told to do only. Learned about different types of register why are they important and how to program one,different data accessing methods

machinecode

What i think future looks like
#

I am really excited about future we are going to. A lot of people are working hard enough to make future better and easier. A lot of things are changing in programming and writing in general people are taking assist from AI assistance a lot. While Current research is more focused on generating high-level code, I sometime think what if the compiler or interpreter be so intelligent that it directly translates natural language to machine code.

Conclusion
#

My conclusion is that developer want to have good experience programming or designing something . This development shows that programmer want to bring programming much closer to the general language(english). Programmer tendsto have a good assistant that can be a good compiler or llm helping or making the task easier and efficient.