Good illustration of why in some
ways it's actually easier to be
a solo founder of a startup than
an employee of one!

I know next to nothing about
Linux -- it's yet another multi-user,
demand paged, virtual memory operating system
with an 'embedded' operating system
and a hierarchical file system, written
mostly in C. Right? That's about all
or a little more than I know about it.
There have been a lot of those, back
to Multics. So, Linux is yet another one.
Okay.

But I'm developing on Windows. Even on
Windows I don't know that much detail. For
such questions on Windows, I wouldn't
know a good source (wish I did), and
when I need answers to such questions have
to Google/Bing a lot, hit Stack Overflow,
etc., one silly little question at a time.
Bummer, but the frequency with which
I have to do
such scavenger hunting in muddy swamps
has been declining.

No doubt when I bring up Windows Server
I'll have a lot more such detailed mud
wrestling to do; similarly for serious
work with SQL Server. Bummer -- again
I'll be screaming at the lack of good
documentation for such questions.

Still, so far my software development is
going ahead well without such detailed
knowledge. Actually I've long suspected
that once my company gets serious with
number of users arriving per hour and revenue
getting up to the useful level, I'll get
answers to such questions by calling for
paid, expert support at Microsoft. It's
their software, not mine! And while most
such questions are simple conceptually,
digging out the answers often is not.

Indeed, one reason I selected Windows instead
of Linux is the hope, maybe false, that
one way and another, say, from Microsoft
or Stack Overflow, books, Microsoft's
MSDN Web site and the similar site for SQL Server,
I'll have better means of answers to such
questions. Similarly, when I need a high
end LAN switch, I'll try to pick Cisco
heavily due to a hope for good sources,
possibly from Cisco, for answers to such
questions. LAN switching is their darned
business, not mine; they can do their
business, and I'll be a paying customer,
and I'll do my business.

For hiring, there's a recent remark from
Richard Branson that he hires for personality
and not skills since skills can be taught,
he believes quickly, while, implicitly, it
appeared he was saying that personality could
not be taught quickly. Actually, for such
detailed questions for Linux/Windows Server,
he is significantly correct. So, I'm hoping
to hire bright people with good personalities
who are at least okay computer users (even if
they have never written a line of code in their
lives) but are good at typing, reading, writing,
speaking, 'critical thinking', getting some okay
understanding from some horribly badly written
material (i.e., nearly all computer industry
documentation), and analyzing ambiguous situations.
Right: Sounds like I might want to hire some
good humanities majors! Nerd me!

Then have such
employees start with simple things, say, plugging
together a server, working up a simple, quick
and dirty parts inventory system (maybe just a
flat file with some keywords maintained with just
a text editor maybe with a few macros -- maybe
even a, yuck, spreadsheet), pulling CAT 5 cables
and using a crimping tool for the ends, installing
Windows Server, calling Microsoft for technical
details, documenting what they learned about how
to install, configure, and administer Windows Server,
etc.

Then, teach them programming a few lines at
a time, e.g., Visual Basic .NET (apparently about
the same as C# for getting to the CLR and .NET
Framework but, to my eyes, easier to read on
the page than C# with its syntax from C
and, thus, deliberately idiosyncratic).

For basic computer
and network architecture, I'll give them a 30 minute
overview lecture they can capture on video and use
for other new hires. The hope is that such people
will be able to grow in 'skills' as fast as the
company grows. I.e., I'll show them what I
already know, and as we need to learn new things
it's their job to dig them out and document
them for others. Did I mention I want them to
know how to write (and not learned in the
computer industry)?

Then for Facebook hiring, I would ask: Whatever
the heck happened to the last person in that position?
And, why the heck does Facebook have to go recruiting
for such a person? You mean, Facebook doesn't have
a backup for such a person? Or, Facebook has
400 billion executing instances of Linux, may be
compiling some unique versions of Linux, and, still,
has only one Linux system administrator? Not good.

Broadly, if Facebook needs such 'skills',
then they should grow the capabilities internally. Or,
I can do my startup without knowing all that stuff;
if Facebook would want me to know that stuff, then
they should pay me to learn it.

This stuff about having to walk in with a lot of
detailed knowledge, learned on my dime and time,
just as needed by Facebook for just an 'employee'
position in a big company, that is, an organization
that in a few years might just decide to layoff
20,000 employees, is getting to be a bad, old story.
A startup, even for grass mowing, literally, looks
more promising.