BT

Panel: Who will Develop Software in 10 Years?

by Floyd Marinescu on Mar 19, 2007 | NOTICE: The next QCon is in New York Jun 9-13, Join us!
In this video discussion panel (with transcript) Martin Fowler, Frank Buschmann, Steve Cook, Jimmy Nilsson, and Dave Thomas discuss the future of software development. If you couldn't make it to QCon last week, this panel from QCon sister-conference JAOO will give you a sense of how things were.

Watch: Who will Develop Software in 10 Years? (39:59 min).  Some interesting perspectives from the panelists initial responses:

Frank Buschmann
 - more business people coding alongside developers thanks to new higher level tools such as DSLs
 - more autonomic computing
 - greater need for skilled professional developers; sees more software being developed locally (not outsourced)

Steve Cook
 - more software about software. Platform will be more introspective and richer
 - more modelling, and modeling as part of the OS
 - 20% of GDP of the US today has to do with software; 30-40% of world GDP will be related to software
 - massive increase in software development will mean more jobs for software developers, no thread of outsourcing taking jobs
 - software development done as a supply chain

Jimmy Nilsson
 - more business experts involved in SW development
 - more software development will be done locally

Dave Thomas
 - todays platforms are very buggy, he is optimistic about future platforms getting better, infact it must get better because  "technology is growing at a quadratic, but the value in business software is growing exponentially in terms of domain content", and unless it happens we will "die in the testing hell we have been in for a long time. 50% of any real successful product is testing, so I think shifting that is going to be very important.."
 - sees some radically different programming technologies (beyond "current kind of object stuff")and platforms being used, cites current specialized work in bioinformatics, finance
 
Following their initial responses, questions raised also discussed if Google will be the next MS?, multi-core & parallism, grid computing, software stacks of the future, and more.

What do you think about how software will be developed in 10 years?

Hello stranger!

You need to Register an InfoQ account or to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Massively distributed applications - non collaborative vs collaborative by Michael Bienstein

The representative from Seimens says that cell-phone networks are an example of massively distributed applications. That's true as to how to route packets and connections, but it is not a collaborative application like the classic Seti@HOME. That made a thought enter my mind - I haven't seen Seti@HOME offer people with cell-phones using i-mode (always connected) to sign up so that when not busy on the phone, data can be pushed to the phone, crunched and packets sent back. Isn't the cellphone network a great resource for long-running applications whose data can be partitioned well?

10 years? by Chris Paulse

What were people saying 10 years ago? I imagine pretty much the same. Business experts would become involved in software development. Google seem now to be pushing things in the opposite direction.

something to do with the platform by Floyd Marinescu

One thing that I think will be an important aspect of what software development will be like in 10 years (although that wasn't the initial question to the panelists) is what platforms will people be writing for, which itself is driven by how will humans interface with computers.

Today humans are interfacing more via the web than on direct desktop apps. The web has changed everything and forced us to re-invent a lot of the development concepts and styles that we had a long time ago. For example, it's a bit ridiculous that we (or maybe just I) get excited when I see web apps becoming more like GUI's with widgets like modal dialogues. We had all this before, just on a different platform (OS-specific).

I think in 10 years we will see computers all over the home in all kinds of devices that you wouldn't imagine them in, such as the current infant movement of home media computers. How that will impact human-computer interaction, I don't know. :)

KISS... by Mittal Bhiogade

at the end of talk - some one did mention - how complex phones have become and how simple they were earlier - are we taking s/w towards it - by adding layers after layers.....

Re: something to do with the platform by Alex Popescu

I think in 10 years we will see computers all over the home in all kinds of devices that you wouldn't imagine them in, such as the current infant movement of home media computers.


Wasn't this the initial assumption of creating Java? And I don't think things have moved pretty far in this direction. Having all people to accept computers ubiquity may take longer than what some may expect.

Imo the big shift is the parallel computing. We will need to come up with better concepts and tools to ease our lives when developing for multi-cores. And the developers will be quite the same, probably just learning to interact more and more with the end users (and sometimes making these directly involved through smart DSLs).

toodle-oo,
./alex
--
:Architect of InfoQ.com:
.w( the_mindstorm )p.
C4Media/InfoQ Co-Founder

Re: Massively distributed applications - non collaborative vs collaborative by Dimitrov Dimitar

I don't think that the idea of using the idle CPU power of mobile devices is a very good one due to one main factor - battery power.

Few years ago, my Ericsson t39 was able to work about between 3 days and a week on one battery charge. These days I charge my mobile every night, just to be sure that it won't die on me in the middle of the day while I use it to check my email, read news, play games and so on. The main power consumers are the high-res back-lit color screens, the RF circuit and the CPU.

Re: Massively distributed applications - non collaborative vs collaborative by Cameron Purdy

> Isn't the cellphone network a great resource
> for long-running applications whose data can be
> partitioned well?

Unfortunately, most tasks are a lot heavier on the data reqs than they are on the crunching reqs .. that's why most problems tend to scale poorly in stateless systems (because most problems have state ;-).

Look at it this way: If an execution unit requires B bytes of data and P processor cycles, and assuming there are no QoS issues with the data (i.e. it can be stale, so distributing it to a cell phone isn't a problem), then you have to look at the cost (call it "C") of CPU power and other resources at the data-center for pushing out B bytes of data in order to save P processor cycles. If the management cost C exceeds the P processor cycles from the cell phone, then you achieve negative scalability (bad). Most problems will fit this pattern, unfortunately.

Peace,

Cameron Purdy
Oracle Coherence: Data Grid for Java and .NET

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

7 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2013 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT