(A) is a reasonably correct description of
some dysfunctional aspects of the Silicon
Valley culture but
(B) omits considerations much more
important for the main goal of the Silicon
Valley culture or any such activity at all
-- business success.
Here I concentrate on this last, business
success, i.e., making money with
computing, software, and the Internet.
=== New Technologies
In the sense of (A) above, it appears that
the article wants to concentrate on "new
technologies" by which it likely means,
say, Python, Django, Ruby, Rails,
Objective-C, JavaScript, jQuery, Node.js,
mobile devices, etc.
Two problems:
(a) For a startup seeking the goal of
business success, those technologies are
mostly just redundant alternative tools
from which a given startup need pick only
a few.
Sure, a person with more skills with
more such tools can be useful quickly in a
larger collection of startups by others.
So, by concentrating on acquiring skills
with so many tools, the person is
concentrating on being an employee and at
least partly neglecting picking a good
project and startup for the real goal of
business success.
(b) The "new technologies", when and if
really needed for the goal of business
success, are not just routine software,
and the OP did not explain "new
technologies" that are needed or how to
acquire them.
=== An Example
For my startup, two weeks a go or so, I
got all the production software I planned
running.
In writing that software, I decided that
my user interface (UI) would be just a
simple Web site, not an app, and, for
the foundation for the software,
selected Windows, the .NET Framework,
ASP.NET for developing the Web pages,
ADO.NET for interacting with SQL Server,
and Visual Basic .NET (VB) for the
programming language.
My Web pages are so simple (i) I don't
need to write or even read any JavaScript
and (ii) even for just my first all
English language version, 2+ billion
people around the world, eight years old
or older, whether they know English or
not, should find the site easy to use
right away or, in the case of an eight
year old without English, soon. So it's
all just the simplest HTTP, HTML, and CSS
with just some one line text boxes and
some links with no pop-ups, pull-downs, or
roll-overs. We're talking simple as in
"Keep it simple, stupid" (KISS).
My mobile strategy is to have my Web
pages quite usable even on nearly any
mobile device. E.g., each Web page is
just 800 pixels wide with large fonts and
high contrast, and a window only 300
pixels wide should be wide enough.
Sure, Python has a lot of software
libraries: So, if some such library has
some functionality I need that is not in
.NET, that I can't find in open source in
C# or VB, and that I shouldn't just
program myself, then maybe I'll use some
Python. Okay. So far, nope.
So far I don't need more of the OP's
technologies -- Ruby, Rails, Python,
Django, JavaScript, Objective-C, etc. or
whatever else the OP had in mind.
So, the OP's view of the role of
technologies is not good.
=== New Technology
The OP emphasized "new technology":
Okay, continuing my example, in my startup
there is some new technology -- I
created it. It's implemented in software,
but just as software it is just routine.
The most advanced code in the software I
wrote is a use of the classic heap data
structure as a priority queue.
What's special is what came before the
software. And that's not computer
science, either.
Instead, my new technology is some
applied math I derived, yes, complete with
theorems and proofs, based on some
advanced prerequisites -- I especially
thank A. Kolmogorov and J. von Neumann.
Maybe these two guys are "new" to Silicon
Valley -- otherwise they go back nearly a
century.
The Silicon Valley culture the OP is
describing will have a tough time
duplicating or equaling my new
technology.
So, for new technology, I'm far ahead,
not behind.
For the new technology I created, the OP's
"The young understand new technologies
better than the old do" is exactly
backwards.
Net, it appears that the OP believes that
the keys to business success are new
technologies such as Python. Nope!
Instead, Python is just yet another
applications programming language that
permits writing routine code and is
nothing like a step toward the new
technologies important for the goal of
business success. Similarly for Ruby,
JavaScript, Objective-C, C#, VB, etc.
=== Denouement
Why am I picking on Python?
From what I've read, Python, CPython,
IronPython, etc. are fine, and some of the
libraries are terrific. Okay, so, there
is yet another applications programming
language: It will likely have a good
variety of elementary data types, classes,
allocate-free, If-Then-Else, Do-While,
Call-Return, call by value, call by
reference (likely won't have call by
name), file and console reading and
writing, access to TCP/IP, some means of
exceptional condition handling, e.g.,
Try-Catch, some facilities for multiple
threads and locks, etc. It might be
compiled, interpretive, or run on a JVM.
Okay.
Once I talked with some of the best
technical support people at
Andreessen-Horowitz (A16Z). They wanted
me to be using Python.
I told them that for my startup I had
selected Visual Basic .NET (VB).
The A16Z people thought that VB was a toy
(they were thinking about the old version
of Visual Basic), and I had to explain
that (A) for serious production computing
on Windows what is crucial is the .NET
Framework; (B) essentially the most
important language for such work is C#;
(C) the .NET version of Visual Basic is
different from C# essentially only in a
different flavor of syntactic sugar; and
(D) for several reasons I prefer the VB
flavor.
The A16Z people missed another crucial
point: I started with VB only with my
present project. Well, right away, less
than a minute, I was able to read and
write VB. Then with the syntax lessons
from just a few, simple code samples, I
could write VB right away -- no delay at
all. The language was very much not the
challenge.
There was a challenge -- the .NET
Framework with however many classes and
thousands of Web pages of documentation;
for serious production software on
Windows, .NET is just crucial. The A16Z
people didn't understand that.
C#? The syntax looks a lot like that of C
so is familiar enough. Of course, I don't
like the C syntax -- never did. Used it?
Yes. Liked it? No.
Lesson: Even among the best technical
support staff at A16Z, the understanding
of "new technology" is not good.
For the business goal, this lesson and
that of the OP are essentially inevitable:
In anything like the present context, the
coveted unicorns are rare and need not
fit simplistic patterns. So, much
consensus on creating unicorns would
contradict that the unicorns are rare.
It seems to me that the article:
(A) is a reasonably correct description of some dysfunctional aspects of the Silicon Valley culture but
(B) omits considerations much more important for the main goal of the Silicon Valley culture or any such activity at all -- business success.
Here I concentrate on this last, business success, i.e., making money with computing, software, and the Internet.
=== New Technologies
In the sense of (A) above, it appears that the article wants to concentrate on "new technologies" by which it likely means, say, Python, Django, Ruby, Rails, Objective-C, JavaScript, jQuery, Node.js, mobile devices, etc.
Two problems:
(a) For a startup seeking the goal of business success, those technologies are mostly just redundant alternative tools from which a given startup need pick only a few.
Sure, a person with more skills with more such tools can be useful quickly in a larger collection of startups by others. So, by concentrating on acquiring skills with so many tools, the person is concentrating on being an employee and at least partly neglecting picking a good project and startup for the real goal of business success.
(b) The "new technologies", when and if really needed for the goal of business success, are not just routine software, and the OP did not explain "new technologies" that are needed or how to acquire them.
=== An Example
For my startup, two weeks a go or so, I got all the production software I planned running.
In writing that software, I decided that my user interface (UI) would be just a simple Web site, not an app, and, for the foundation for the software, selected Windows, the .NET Framework, ASP.NET for developing the Web pages, ADO.NET for interacting with SQL Server, and Visual Basic .NET (VB) for the programming language.
My Web pages are so simple (i) I don't need to write or even read any JavaScript and (ii) even for just my first all English language version, 2+ billion people around the world, eight years old or older, whether they know English or not, should find the site easy to use right away or, in the case of an eight year old without English, soon. So it's all just the simplest HTTP, HTML, and CSS with just some one line text boxes and some links with no pop-ups, pull-downs, or roll-overs. We're talking simple as in "Keep it simple, stupid" (KISS).
My mobile strategy is to have my Web pages quite usable even on nearly any mobile device. E.g., each Web page is just 800 pixels wide with large fonts and high contrast, and a window only 300 pixels wide should be wide enough.
Sure, Python has a lot of software libraries: So, if some such library has some functionality I need that is not in .NET, that I can't find in open source in C# or VB, and that I shouldn't just program myself, then maybe I'll use some Python. Okay. So far, nope.
So far I don't need more of the OP's technologies -- Ruby, Rails, Python, Django, JavaScript, Objective-C, etc. or whatever else the OP had in mind.
So, the OP's view of the role of technologies is not good.
=== New Technology
The OP emphasized "new technology":
Okay, continuing my example, in my startup there is some new technology -- I created it. It's implemented in software, but just as software it is just routine. The most advanced code in the software I wrote is a use of the classic heap data structure as a priority queue.
What's special is what came before the software. And that's not computer science, either.
Instead, my new technology is some applied math I derived, yes, complete with theorems and proofs, based on some advanced prerequisites -- I especially thank A. Kolmogorov and J. von Neumann. Maybe these two guys are "new" to Silicon Valley -- otherwise they go back nearly a century.
The Silicon Valley culture the OP is describing will have a tough time duplicating or equaling my new technology.
So, for new technology, I'm far ahead, not behind.
For the new technology I created, the OP's "The young understand new technologies better than the old do" is exactly backwards.
Net, it appears that the OP believes that the keys to business success are new technologies such as Python. Nope!
Instead, Python is just yet another applications programming language that permits writing routine code and is nothing like a step toward the new technologies important for the goal of business success. Similarly for Ruby, JavaScript, Objective-C, C#, VB, etc.
=== Denouement
Why am I picking on Python?
From what I've read, Python, CPython, IronPython, etc. are fine, and some of the libraries are terrific. Okay, so, there is yet another applications programming language: It will likely have a good variety of elementary data types, classes, allocate-free, If-Then-Else, Do-While, Call-Return, call by value, call by reference (likely won't have call by name), file and console reading and writing, access to TCP/IP, some means of exceptional condition handling, e.g., Try-Catch, some facilities for multiple threads and locks, etc. It might be compiled, interpretive, or run on a JVM. Okay.
Once I talked with some of the best technical support people at Andreessen-Horowitz (A16Z). They wanted me to be using Python.
I told them that for my startup I had selected Visual Basic .NET (VB).
The A16Z people thought that VB was a toy (they were thinking about the old version of Visual Basic), and I had to explain that (A) for serious production computing on Windows what is crucial is the .NET Framework; (B) essentially the most important language for such work is C#; (C) the .NET version of Visual Basic is different from C# essentially only in a different flavor of syntactic sugar; and (D) for several reasons I prefer the VB flavor.
The A16Z people missed another crucial point: I started with VB only with my present project. Well, right away, less than a minute, I was able to read and write VB. Then with the syntax lessons from just a few, simple code samples, I could write VB right away -- no delay at all. The language was very much not the challenge.
There was a challenge -- the .NET Framework with however many classes and thousands of Web pages of documentation; for serious production software on Windows, .NET is just crucial. The A16Z people didn't understand that.
C#? The syntax looks a lot like that of C so is familiar enough. Of course, I don't like the C syntax -- never did. Used it? Yes. Liked it? No.
Lesson: Even among the best technical support staff at A16Z, the understanding of "new technology" is not good.
For the business goal, this lesson and that of the OP are essentially inevitable: In anything like the present context, the coveted unicorns are rare and need not fit simplistic patterns. So, much consensus on creating unicorns would contradict that the unicorns are rare.