Software Development Evolution, From Eniac to EinsteinGPT.
Programming the Eniac

Software Development Evolution, From Eniac to EinsteinGPT.

TL;DR; The article discusses the evolution of software development, from the early days of wiring cables on the ENIAC to the use of GPT tools to have a computer write code itself. It highlights the major milestones in the field, such as the emergence of high-level programming languages, object-oriented programming, and the integration of artificial intelligence into the development process. The author reflects on the industry's rapid evolution and the difficulty of making predictions in this dynamic field.

The journey of Software Development started from the early days of wiring cables on the ENIAC to the ability to use EinsteinGPT tools and have the computer write the code itself.?

We are very fortunate to have grown professionally in an industry that evolves very quickly, I graduated from Computer Science from Virginia Tech in 1995.

There were a couple of elective classes I took during my senior year that were very interesting:

  • Multimedia: This class was about how computers could play sounds, display images, and show videos. Nowadays we take that for granted! This class was my first introduction to HTML and I was so proud to make a page with some images. I had to print the page to show it to my girlfriend because she did not have Internet access.
  • Artificial Intelligence: This class was back in the very early stages of AI, and was mainly focused on how to create the game logic in PROLOG, a language based on rules. I remember that one day the professor said: “There will never be a tool to write code for you”. I guess it’s difficult to make predictions in this industry.
  • Object Oriented Programming: This was an elective that was offered in my senior year, but I did not take it because I thought that it was not important. Like I said before, I guess it’s difficult to make predictions in this industry.

But what's more interesting is the fact that I finished from a great university (Virginia Tech, Go Rookies!) studying one of the most advanced degrees in technology (Computer Science) and we did not know about iPhone, Google, AWS, Agile, Github, etc, etc, etc.

Another aspect of history that is fascinating is the evolution of software development. In 1945 when Eniac (Electronic Numerical Integrator and Computer was completed, it was the first programmable, electronic, general-purpose digital computer.

It was programmable!

But not in the way you think about computer programming nowadays. Programming required analyzing differential equations, determining how to patch the cables to connect to the correct electronic circuits, and setting the thousands of 10-way switches. The women physically hand-wired the machine, an arduous task using switches, cables, and digit trays to route data and program pulses. (https://spin.atomicobject.com/2016/07/31/eniac-programmers/)

During the early days of software development, programmers had to physically wire the machine to perform specific tasks, a process that was laborious, time-consuming and generally done by women. This era also saw the emergence of the waterfall model, with distinct phases for specification, development, and testing.

The 1980s marked a significant shift with the emergence of high-level programming languages such as Ada, Pascal, and C. These languages allowed developers to write code at a higher level of abstraction, making it easier to program and maintain complex systems. Additionally, this era saw the introduction of Computer-Aided Software Engineering (CASE) tools aimed at improving the quality of systems while reducing development time.?

The 1990s witnessed the rise of object-oriented programming (OOP), a more intuitive way of modelling real-world entities. We also saw the introduction of agile methodologies such as Scrum and the Manifesto for Agile Software Development (iterative development).

In recent years, the integration of artificial intelligence (AI) into the software development process has become increasingly evident. AI-powered tools including GitHub Copilot, ChatGPT, and Einstein For Developers are optimizing coding routines, reducing the time spent on repetitive tasks, and providing intelligent suggestions to developers. This integration of AI is streamlining the development process and empowering developers to focus on higher-level problem-solving and creativity.

Another aspect that is interesting in this evolution is that software development has become more efficient and collaborative than ever before. Thanks to the internet and cloud computing we can program computers that we do not own from anywhere which means the distances have disappeared since a person in India, Spain, Colombia, and Canada can do the same job.

In summary, we have seen a great evolution in software development, starting with wiring cables (Eniac), going through assembler, COBOL, C, OOP, Java and nowadays writing GPT prompts, and who knows what else is coming after that. it’s difficult to make predictions in this industry!

Resources:

Lisa Fegraus

Making technology work for humans

1 年

I used to walk past the ENIAC panels on display at Penn on the way to my work-study job changing giant disks in the server room! It’s amazing how far we’ve come! https://www.seas.upenn.edu/about/history-heritage/eniac/

要查看或添加评论,请登录

Andres Perez的更多文章

社区洞察

其他会员也浏览了