Kristen Nygaard, co-creator of Simula 67, dies
jejones writes "Kristen Nygaard, co-creator of Simula 67, a variant of Algol 60 designed for writing simulations that is considered to be the first object-oriented programming language, died of a heart attack on August 10, 2002 in Oslo, Norway.
An AP article, truly astonishing in its errors (e.g. "the programming language Simula...laid the basis for MS_DOS and the Internet"?!), can be found here."
You could argue that the idea's behind object oriented programming that Kristen Nygaard pushed influcenced later ideas of how objects communicate, and interact with each other. Which or course have influenced the architectural course of the internet.
In the past couple of months three dinosaurs have passed away. First went Ole Johan Dahl, the other developer of Simula. Then, a week or so ago - Dijkstra passed away. And now Kristen Nygaard.
Are we now in a time where The Elder Ones are passing away?
"Rune Kristian Viken" - http://www.nwo.no - arca
While Simula and OOP may be great for physical simulations, I think many of the ideas have been misapplied or over-applied to software engineering.
Here is an except about modeling versus simulating from my website:
"I disagree with the suggestion that business processes should be heavily modeled as real-world interactions. Viewing business applications as "simulations" can be problematic. Simulations are to reflect interactions of the "real world" in order to study the real world and improve its flow. Business applications are to achieve something by the best means possible using computers. These two goals are not necessarily the same, nor necessarily result in the same solution. A common example given of this disconnect is that if flight was modeled via real-world simulations of our actual experiences, then airplanes would have wings that flap.
Mirroring the real world and getting something done as efficiently as possible are different animals. Sometimes they overlap, but often they don't. The strength and weaknesses of computers are different than those of humans. Thus, to achieve the same task as simple and flexible as possible via computer requires different approaches than achieving it as a human with desks, paper, elevators, etc.
I don't really question OO's value in modeling interactions and behaviors of the real world. However, the best techniques for modeling the real world and for making better software are probably not the same in most cases.
I also notice that some software developers try to mirror the "real world" very closely in order to keep the customer comfortable by keeping alive archaic processes from the manual way of doing things. However, one may miss opportunities to improve or streamline the process if this is done. I am not saying that initial customer comfort is a bad thing, but perhaps the customer should be aware of the tradeoff being provided. Just be careful not offend them by implying that they won't be able to "handle the ideal process". These kinds of things often takes delicate diplomatic skills that frankly exceed my abilities.
Keep in mind, though, that the issue of the internal model (what the developer sees) and the external model (user interface) are generally independent. One can reflect or simulate the external world without having the other do the same."
(from: http://geocities.com/tablizer/model.htm)
Table-ized A.I.