Fog Creek Software
Discussion Board

The Future Of Software Development

Look in your crystal ball -- where will software development be in 10, or even 20 years? How will the role be perceived (i.e. white collar or blue collar, respectable or assembly work), and how many people will be in this profession?

Dennis Forbes
Wednesday, May 26, 2004

Due to the overwhelming need for the increase in efficieny in our processes, the ever increasing number of college educated people, the perpetual motion of a capitalist society and the unfortunate lack of resolution by the US government to prevent the resolve of large companies dominating major market sectors - programmers will and already have become a commodity.  Bought and sold like pigs at the slaughter house.

Due to the overwhelming nature of human beings software will continue to evolve as abstraction layer upon abstraction layer is added.  Soon software will literally be pug and play.  Plug this game engine with this game style with this game play module and play my game.

Due to common sense people will soon realize that modern day computers have already seen their day.  If and only if a method of modeling everything in the universe through mathematics is discovered will anything come of computers beyond tools for communication and computation.

BTW: Your span is too short.  30 - 40 years at least.

Code Red
Wednesday, May 26, 2004

In 20 years?

(I like terminator 2 so Ill be using past tense =)

XML was just the start. Focus drifted from logic and platforms to how those relate to one another. This lead to the standardization of a number of different connection types that allows basicly any two logical entities to communicate, like through logic aware pipes.
From then on, software development became more like arcitecture, and visual tools were used to string together eitities into larger systems.

The entities were bulit from highly detailed specs, by quantum AI. Noone ever really saw the code.

This in turn lead to there being three distinct classes of programmers. The legacy maintanance programmers, the system architects and the quantum programmers. There was very little overlap in the skillsets between the three.

...then skynet became self aware....

Eric Debois
Wednesday, May 26, 2004

Put yourself in the early 80s - PC were just coming out, COBOL was king, networking was DECnet.  Ask yourself then where we'd be in 20 years.  No way could you forecast the explosion of the Internet and the PC market.

So, I refuse to play the "where's it going in 20 years" game.  Not enough information to even guess where we'll be.

Wednesday, May 26, 2004

Prestige of an occupation is often determined by salary.  Salary is determined by supply and demand.  From where I sit, I see an oversupply of:

- Recent college grads
- Burned out middle-age C hacks
- Geek coders, where it's all about the code and not about what you're really trying to accomplish.

I'm hard pressed to think there's an oversupply of:

- People who know how to ship a product, soup to nuts
- People who can understand a business and its employees well enough to provide a product that solves their problem.
- Architects who haven't lost touch with reality

Bill Carlson
Wednesday, May 26, 2004

in other words: more biz apps...

Wednesday, May 26, 2004

The tendency of software development by configurability will continue, and the use of visual tools and script like languages will prevail more and more. Where that is going to take us? I don't know :-)

Wednesday, May 26, 2004

> Put yourself in the early 80s
> No way could you forecast the explosion of the
> Internet and the PC market.

Yes we could. I built a prototype workstation in 1981 which had scaled down versions of some popular engineering apps of the time. I made it from a S100 bus, 64Kb RAM, a Zilog Z80 CPU and CP/M. It had graphics, editors, compilers, telnet and ftp. All for about $5000 which was incredibly cheap back then.

The purpose was to show the company bigwigs what was coming down the pike when the new 16bit chips were available. And to say these microprocessors were not just toys anymore.

(Aside: The floppy disks were made by a company called Thinker Toys which later was renamed to Morrow Designs, but I had to obliterate the Thinker Toy logo or the suits would have scoffed at the whole idea.)

The system did not have actual networking per-se. I had to write the ftp and telnet apps in 8080 assembler myself, but it wouldn't have taken me very long to integrate it into our DecNet if I had to.  By 84, which is still early 80s I guess, we were using unix on the first Sun machines with tcp/ip networking.

Yes, we saw it all coming. My thing was done in 81 but as far back as 78 I attended seminars which predicted a huge market for home computers. That's when Radio Shack had first introduced the TRS80.

Wednesday, May 26, 2004

People predicted PCs and net. With PCs, I read papers from people in the 70s who eyed the costs of computing, waiting to pounce on the market when computing was just barely affordable for personal use. Hypermedia is also a very old concept, apparently dating back to Vannevar Bush's 1945 article.

However, knowing details (like companies, individuals, etc) is obviously harder. Fortunately, with the net it's easier for people with good ideas to be on the same footing as those with worse ones but better business background. In fact, many of today's ideas are implemented badly, leaving still a rich history to plunder.

Tayssir John Gabbour
Wednesday, May 26, 2004

People did NOT predict the business and consumer response to the internet, otherwise they would have gobbled up all the domain names by 1988.

Wednesday, May 26, 2004

"...then skynet became self aware...."

...and worse it ran on Windows.

Wednesday, May 26, 2004

Ron, two economists walked down the street. The younger economist spotted a $20 bill and went to pick it up. The older one sharply commented, "Ignore it. If it were a real $20 bill, someone would have already grabbed it."

A (successful?) 1982 precursor to the web:

Again, there are unpredictabilities. Historically, good businessmen have had an advantage over technologists, though this hopefully will get better with the www. This is why the venture capitalist's job isn't drop-dead trivial.

Tayssir John Gabbour
Wednesday, May 26, 2004

Robotics and voice interfaces will continue to slowly creep up on us.  Machine vision, language processing, obstacle avoidance and manipulation, etc. will continue to improve and we will continue to come up with reasons why these things don't constitute "true" AI.

The PC will gradually become less important as more special purpose devices take over more of the niches that the PC currently inhabits.

Genetic programming will mean that a lot of programming will seem more like gardnening:  "plant" some ideas with various starting conditions and available resources, then watch how they grow.  Weed, prune, repeat.

Robotics programming could be resistant to outsourcing, because programs for robots will almost definitely be closely held proprietary secrets and considered a key differentiator for the industry.

Eventually, (maybe longer than 20-40 years), programmers will be more robot psychologists than coders.  Soon after, either the robots create a utopia for us or decide to wipe us out, depending on how well we programmed them.

Jim Rankin
Wednesday, May 26, 2004

In ten (or twenty) years, we'll see the widespread adoption and usage of web services.  I can think of several ways this will change business processes already even at the places I've worked at so far, and there have to be a lot of great things I can't even imagine.  Nothing revolutionary, just more acceptance, until web services are so prevalent that we 'hit critical mass'.  Whatever that means--'build it, and they will come'?  In twenty years, we'll see some useful applications, that's all I'm saying.

In twenty years, there will be heaps more code available from sites like, MSKB articles, and Sourceforge.  Unfortunately, the quality of this code remains flatly where it is today: poor to very poor.  So everyone continues to rewrite everything anyways, as the problem of 'finding what I need' takes longer than 'just solving the problem'.

Linux usability will improve on the surface with excellent applications, utilities, window managers, etc, but administrative duties will remain in the domain of the smelly Unix admin/sorceror.  Twenty years from now, MANY people will still type in code via a terminal window (not that there's anything wrong with that...).

Windows-based notepad replacements will number in the hundreds in ten years, in the thousands in twenty.  Any Internet community message mentioning text editors will receive no less than twenty suggestions for 'the best' replacement.

Apple will release a new iPod that's even smaller, carries 5GB of data, and has a durable 'Worship Steve Jobs' button, which incidentally is the only button.  It will be the best seller ever for Apple, and trumpets in the era of Apple's fifteenth comeback (the next twenty years are going to be somewhat ROCKY for Jobs and Co.).

Wednesday, May 26, 2004

There are big problems ahead.

Business has been very successful in commoditising software development - reducing the pay rates and the standing.

There are lots of pockets where this has already pushed out the best people, leaving mindless hacks with poor communications skills behind. This will spread so that even elite environments will start to feel the pinch.

Funnily enough, development requirements are set to become harder through the rest of this decade, and so sooner or later there will be a big crunch.

I predict serious problems in corporate IS and perhaps ISV's around 2007, especially as large outsourced systems start to enter first maintenance phases.

Probably this will be accompanied, as now, by condemnation of programmers. Thus, only complete dopes will work as programmers.

Mr 2020
Wednesday, May 26, 2004

"People did NOT predict the business and consumer response to the internet, otherwise they would have gobbled up all the domain names by 1988."

As an aside, I would disagree. Since the late 70s we have had services like Prodigy and Compuserve, both mini-Internets, and all estimations were that the connected world would continue to explode (I have plenty of early 80s magazines that continually predict this). Knowing that we'd live in a connected world is one thing, but knowing specifically what technologies would underlie that world is an entirely different guess: We could just as easily be communicating via RDMCI Protocol using TrueNames(TM) name lookup, going through the AOL Hub Infrastructure.

Dennis Forbes
Wednesday, May 26, 2004

China will be the dominant force in software development

Wednesday, May 26, 2004

Watch " The Day After Tomorrow" and you will never ask these types of idiotic questions.

Cosmo Kramer should be the president of the United States
Thursday, May 27, 2004

"...then skynet became self aware...."

...and worse it ran on Windows.

Would that really be worse ?  If it ran on Windows it would eventually freeze up or crash (Probably within a week).  Not to mention the resource requirements would be insanely high.

Bill Gates
Saturday, May 29, 2004

*  Recent Topics

*  Fog Creek Home