The Artima Developer Community
Sponsored Link

Weblogs Forum
Software Development Has Stalled

164 replies on 11 pages. Most recent reply: Mar 28, 2010 10:20 AM by Florin Jurcovici

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 164 replies on 11 pages [ « | 1 2 3 4 5 6 7 ... 11  | » ]
Nemanja Trifunovic

Posts: 172
Nickname: ntrif
Registered: Jun, 2004

Re: Software Development Has Stalled Posted: Feb 1, 2010 8:24 AM
Reply to this message Reply
Advertisement
> > Even OOP is not an innovation. Message passing is based
> on
> > the concept of closure, which was introduced with LISP.
> An
> > object in OOP is nothing more than the closure for its
> > member functions.
>
> I am not convinced. Inheritance is the thing than
> distinguish OOP from objects implemented via closures,

Achilleas is probably referring to Alan Key's definition of OOP; not many people take that definition seriously, though :)

"OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme LateBinding of all things"

Taylor Cowan

Posts: 5
Nickname: taylorg
Registered: Nov, 2007

Re: Software Development Has Stalled Posted: Feb 1, 2010 8:47 AM
Reply to this message Reply
Bruce,

>>by discovering better ways to work together.

I have an idea...brain storm 4 or five "ways" to do this, encode it in lofty language, like a constitution of sorts, then find some trendy new process used in Japan's factories to give it a cool name

Keith Braithwaite

Posts: 1
Nickname: keithbr
Registered: Feb, 2010

Re: Software Development Has Stalled Posted: Feb 1, 2010 8:47 AM
Reply to this message Reply
I think the "revolutionary period of big innovation" in programming tools ended about the time that Sun dropped Self.

A longer explanation here: http://peripateticaxiom.blogspot.com/2010/02/innovation.html

Achilleas Margaritis

Posts: 674
Nickname: achilleas
Registered: Feb, 2005

Re: Software Development Has Stalled Posted: Feb 1, 2010 8:57 AM
Reply to this message Reply
> > Personally, I think that all innovations have ended
> with
> > LISP, that introduced garbage collection and lambda
> > functions. From then on, what we have is an iterative
> > improvement of those fundamental ideas.
> >
> > Even OOP is not an innovation. Message passing is based
> on
> > the concept of closure, which was introduced with LISP.
> An
> > object in OOP is nothing more than the closure for its
> > member functions.
>
> I am not convinced. Inheritance is the thing than
> distinguish OOP from objects implemented via closures, so
> inheritance is an innovation with respect to the LISP of
> 50 years ago. The type system of ML-derived languages
> (from the seventies) is also an innovation with rispect to
> LISP. Haskell contains various innovations too. Scheme
> macrology is quite different and innovative with respect
> to LISP macrology. Modern languages have module systems
> which are
> quite different from LISP packages. Also, the compiler
> tecnology improved a lot in the last decades. So there are
> innovations, but only a few, not necessarily recents and
> not necessarily with a big impact on mainstream
> languages.
> Consider for instance the CSP approach to concurrency
> (from 1978) which is becoming a la mode only nowadays
> because of the multicore revolution.

How can you call these innovations, when yourself are mentioning the items that those innovations are based on? to innovate means to create something entirely new, something that does not exist. At most, these things are evolutions of the original ideas.

Merriodoc Brandybuck

Posts: 225
Nickname: brandybuck
Registered: Mar, 2003

Re: Software Development Has Stalled Posted: Feb 1, 2010 11:15 AM
Reply to this message Reply
>
> How can you call these innovations, when yourself are
> mentioning the items that those innovations are based on?
> to innovate means to create something entirely new,
> something that does not exist. At most, these things are
> evolutions of the original ideas.

The dictionary doesn't entirely agree with you

in⋅no⋅vate
  /ˈɪnəˌveɪt/ Show Spelled Pronunciation [in-uh-veyt] Show IPA verb, -vat⋅ed, -vat⋅ing.
Use innovate in a Sentence
See images of innovate
Search innovate on the Web
–verb (used without object)
1. to introduce something new; make changes in anything established.
–verb (used with object)
2. to introduce (something new) for or as if for the first time: to innovate a computer operating system.
3. Archaic. to alter.

I would take make changes in anything established leaves it pretty wide open. And the archaic (old, but still perfectly valid) meaning would definitely include any kind of change.

Where did the idea that innovation HAS to be completely new come from? Some marketing department somewhere?

Daniel Serodio

Posts: 13
Nickname: dserodio
Registered: Apr, 2006

Re: Software Development Has Stalled Posted: Feb 1, 2010 12:46 PM
Reply to this message Reply
Of course he does, he (his company) sells technology for a living, did you expect differently?

Kay Schluehr

Posts: 302
Nickname: schluehk
Registered: Jan, 2005

Re: Software Development Has Stalled Posted: Feb 1, 2010 7:58 PM
Reply to this message Reply
> Achilleas is probably referring to Alan Key's definition
> of OOP; not many people take that definition seriously,
> though :)

One ex-colleague of mine was a smart and reasonable guy with the notable exception of stating absurd hypotheses occasionally which he attempted to defend to death like "People above 50 with a procedural programming background can't learn OOP" or "Without Microsoft GUIs wouldn't have made it into the mainstream". At some point it becomes clear you better nod vehemently, change the topic and ignore the nonsense.

Bill Venners

Posts: 2284
Nickname: bv
Registered: Jan, 2002

Re: Software Development Has Stalled Posted: Feb 1, 2010 8:10 PM
Reply to this message Reply
Hi Marcel,

> I am suprised to hear that from you... but to be honest
> and after I saw you with your talk about ScalaTest at
> devoxx'09 this post makes sense about how you think about
> the field.
>
Hmm. I'm curious what about my Devoxx ScalaTest talk made you think it makes sense I would feel this way about our field. And by the way, although it is sometimes hard to tell on the internet, Bruce Eckel (the author of the blog post) and I are actually two different people.

Michele Simionato

Posts: 222
Nickname: micheles
Registered: Jun, 2008

Re: Software Development Has Stalled Posted: Feb 1, 2010 9:40 PM
Reply to this message Reply
> Achilleas is probably referring to Alan Key's definition
> of OOP; not many people take that definition seriously,
> though :)
>
> "OOP to me means only messaging, local retention and
> protection and hiding of state-process, and extreme
> LateBinding of all things"

Actually I am one of the few people that take this definition seriously and I would prefer to get inheritance off the definition of OOP. I realize however that the most common definition includes inheritance, and that I am in the minority (even if in excellent company ;)

Achilleas Margaritis

Posts: 674
Nickname: achilleas
Registered: Feb, 2005

Re: Software Development Has Stalled Posted: Feb 2, 2010 2:56 AM
Reply to this message Reply
I am not talking about any particular definition of OOP, because either definition (Smalltalk or Simula) has been around at least 30 years.

To innovate does not mean to make changes to something established; it's a completely false definition of 'innovate'. The word 'innovate' contains the Latin word 'novus' in it, which means 'new'.

I can find other definitions (here, for example: http://www.thefreedictionary.com/innovate) that do not contain the notion of 'change something established'. To innovate means to begin something new.

Other definitions:
http://en.wikipedia.org/wiki/Innovation
http://www.answers.com/topic/innovate
http://www.wordreference.com/definition/innovative
http://www.merriam-webster.com/dictionary/Innovate

Of course, doing something new is to change something into something else, so we can consider innovation as a big/important/radical change.

Personally, I have not seen such a change for a long, long, long time. Simionato's post above is evidence for this, that clearly mentions the roots of things and their evolutionary successors.

Noel Grandin

Posts: 3
Nickname: grandinj
Registered: Sep, 2005

Re: Software Development Has Stalled Posted: Feb 2, 2010 5:40 AM
Reply to this message Reply
Organised people into teams productively is the oldest problem around. There is still plenty of scope to improve, but it mostly depends the internal characteristics of people involved, and is thus not amenable to systematic solutions.

Technology-wise, what has changed is that most of the easy targets in the IT field have been thoroughly taken care of.

What is left is the slow but steady refinement and improvement, with the occasional breakthrough.

James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Software Development Has Stalled Posted: Feb 2, 2010 6:03 AM
Reply to this message Reply
> Technology-wise, what has changed is that most of the easy
> targets in the IT field have been thoroughly taken care
> of.

On which planet is that?

Humberto Madeira

Posts: 5
Nickname: kunakida
Registered: Apr, 2008

Re: Software Development Has Stalled Posted: Feb 2, 2010 6:09 AM
Reply to this message Reply
I agree that, on the whole, the field of development currently appears to be stalled. However, I do not agree that this marks the beginning of a period of stability (effectively a long decline).

Instead, I see signs that development is going through the "shakeout" phase before the "maturity boom" portion of the economic cycle. See http://www.safehaven.com/article-71.htm

The "growth boom" phase is definitely over. We have hit performance walls in both hardware and the software, and can no longer depend on raw performance to drive innovation.

So according to the model of a typical economic cycle, now is the time for the second wave of innovation leading up to the second boom. It is the worst time to be sitting still doing nothing.

Why so?

Because the second boom of an economic cycle is usually characterized by a much smaller number of much bigger players. This is due to the extrapolation (from other economic cycles) that convenience and standardization, rather than performance, will be the key areas of activity. Smaller players that do not get big enough quickly enough will not be able to effectively participate.

Further complicating matters is the imminent emergence of a new technological cycle centering around concurrent programming.

Why concurrent programming?

Because hardware-wise, we are otherwise stalled for further performance gains. And this strongly affects (you might even say curtails) the ability of the big hardware players to maintain their present sales model.

The big hardware players have already decided that concurrent programming is the only way forward that allows them to survive in their present form. (Otherwise, they all become commodity players in a low-margin market)

As a result of that decision, 4-core machines are now everywhere and next year, 48 core (See http://www.techpowerup.com/102445/AMD_Demos_48-core__Magny-Cours__System_Details_Architecture.html) desktops are going to be available. The extra cores will do nothing if the software doesn't support them. So this brings extra pressure right now on innovating around the concurrent programming model.

Once it hits the mainstream, this cycle will certainly bring totally new tools and technologies, however the question is whether the overall market will be able to sufficiently distinguish it from the older technological cycle such that it will generate a new economic cycle.

Based on observation, I would suspect not.

Even so, my hope would be that it could generate a temporary opening for smaller players to bootstrap themselves into the big leagues.

But even in the case that a largish chunk of economic opportunity does not somehow materialize around bringing concurrent programming to the mainstream, I still believe there will still be sufficient technical and personal (even monetary) rewards to make it a worthwhile effort.

Now is not the time for complacency, but for a call to action.

Morgan Conrad

Posts: 307
Nickname: miata71
Registered: Mar, 2006

Re: Software Development Has Stalled Posted: Feb 2, 2010 9:39 AM
Reply to this message Reply
> To innovate does not mean to make changes to something
> established
...
> I can find other definitions...
> http://en.wikipedia.org/wiki/Innovation

Well, the 2nd sentence of that definition says

"It may refer to incremental and emergent or radical and revolutionary changes in thinking, products, processes, or organizations"

Didn't somebody a long long time ago complain about the sad state of cosmic computing and write that there was "nothing new under the sun"?

You and Bruce need to be more innovative in your complaining. :-)

Paul W. Homer

Posts: 2
Nickname: phomer
Registered: Feb, 2007

Re: Software Development Has Stalled Posted: Feb 2, 2010 11:04 AM
Reply to this message Reply
Personally, I think we've been caught in a rut for decades.

Each and every new five year cycle comes in with great fanfare and people talking about change. Each new generation throws itself at a new set of large scale rewrites. Rewrites, that most often consist of the last cycle's disasters, or sometimes the ones before that. Each project starts well enough, but then degenerates into yet another huge ball of mud, gradually sucking out all of the life of the programmers and any possible innovation. Each generation of programmers becomes bitter and disenfranchised, gradually moving on to more rewarding past times.

Again and again. And still, most of our core important data is being held in ancient mainframes, above and away from this sadly repeating cycle.

Welcome to software development in the 21st century :-)

Maybe someday we'll break the loop and build something cool...

Flat View: This topic has 164 replies on 11 pages [ « | 1  2  3  4  5  6  7 | » ]
Topic: Heron Tackles the WideFinder Challenge Previous Topic   Next Topic Topic: Setting Multiple Inheritance Straight

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use