

What Will Programming And Architecture Look Like In 2020? - experiment0
http://highscalability.com/blog/2012/12/26/ask-hs-what-will-programming-and-architecture-look-like-in-2.html#

======
untitledly
I have some issues with this.

1) Programming isn't reverting to guilds because there's no way to restrict
people from learning about programming, and there's no way to restrict people
to only hiring guild programmers.

2) No, not everyone will become a programmer. But a greater spectrum of people
will do programming type things as the rewards for being able to control
computers effectively (via programming) will continue to increase.

3) Bigger People vs. Bigger Ideas seems a statement that is so generalized and
open to interpretation as to be meaningless.

4) Finally, no mention is made of things like superior parallel processing,
something that is integral to continuing to do fancier things with advancing
technology.

~~~
betterunix
"Programming isn't reverting to guilds because there's no way to restrict
people from learning about programming"

Sure there is: nondisclosure agreements, secret APIs, expensive proprietary
tools, etc. You already see this to some degree with video game development.
App stores are going to make this worse, as people are going to have to pay
more in order to develop software and will not be able to just run development
tools on any old system.

"a greater spectrum of people will do programming type things"

Those people will also be more restricted in terms of what they can do. People
will know how to write macros for a specific product; they will not be able to
write programs in general. I suspect that the number of people who can write
general-purpose software is going to decrease as platforms become less open.

"Finally, no mention is made of things like superior parallel processing,
something that is integral to continuing to do fancier things with advancing
technology."

First of all, we do not even know if we can benefit from parallel approaches
to certain very important problem classes (see: NC v. P). Second, we have
heard the "parallel processing will save us" argument in the past, but we were
not saved. From where I sit, algorithmic improvements will be more important
than parallel programming over the next decade: better approximations, better
heuristics, and faster operations are going to win over more cores.

~~~
dotborg
yes, app stores and console game development in particualar are very good
examples

------
salboaie
I like the idea of creating software that resemble patterns found in nature. I
invented 2 directions (not very popular yet, but I like them anyway): 1\.
organic programming: grow the systems, not build them. This idea lead me to
creation of 2 frameworks (one is open source, but beta:
<https://github.com/salboaie/shape>) My original idea about organic
programming was about a tight integration of the tools used for developing the
program with the program itself. These tools can be used at runtime to
customize or even to create new features. This approach have interesting
implication on the framework, some good, some not so good but the organic
paradigm changed the direction and reduced complexity and arbitrariness of
some design decisions. 2\. swarming and swarms as better metaphor for
asynchronous messages. This idea has very nice implications and I believe that
it is an approach that goes towards essential complexity regarding programming
with asynchronous messages. For details, asm me or take a look here:
<https://github.com/salboaie/SwarmESB>

------
jeremiep
I think there will be a paradigm shift in programming styles.

In the last few years I noticed a change from inheritance to composition, from
imperative to declarative and now reactive programming is looking very
promising.

Multi-core concurrency and cloud scalability are the biggest game changers I
can think of. Programming will evolve towards building such systems in a more
deterministic way, with faster iterations, less debugging and more reusable
components.

------
drucken
Pretty loose article with only one central idea of human resource
specialization.

It includes factual inaccuracy gems such as

 _"It wasn't until after WWII that there was a conscious move back to a system
of world wide free trade, which resulted in another era of solid economic
growth."_

This has nothing to do with historical fact. The pre-Bretton Woods and Bretton
Woods system were strongly characterized by very high capital controls and
very high progressive taxation systems, only abolished in early 70s due to
various shocks. Interestingly enough, it is likely there has never been a more
global economically productive or financially stable period in human history
and it is often known as the "Golden Age of Capitalism".

------
jfaucett
Maybe not by 2020 but I think the future of "programming" lies in the machine
learning and ai subsets within the CS field. At some point, to cope with the
complexity we're going to have to have programs that write themselves and
adapt over time, optimizing and creating functions based on input. I think
programming will become a matter of clearly defining problems and desired
outcomes, providing intelligent feedback to the system, running tests over the
software, and essentially letting the programs build themselves.

------
ohwp
praptak posted (<http://news.ycombinator.com/item?id=4966827>) this link:
<http://www.patternlanguage.com/archive/ieee/ieeetext.htm>

In this keynote Christopher Alexander is trying to convince us programmers to
write more human or living software. Maybe that's where it should be heading?

------
ams6110
Java and C# and scripting languages, just like the last 10 years.

