On 2022-08-22 20:01, David Schwartz via PLUG-discuss wrote:
The question that was posed morphed into something about the value of
CS degrees today. I don’t think they’re worth the time or cost to
get one. Keith keeps trying to make my skills sound like I’m some
kind of super-hero or something. Thanks, but things took weird turn
around 2004 and nobody seems to care much today.
I met David about 15 years ago at a PHP meetup at what I seem to recall
was Walt's TV. And yes I think David is very knowledgeable and skilled.
Early in my career (mostly in the 1980’s), the dominant attitude
was, “Hey, you have a CS degree! You can learn anything!” Nobody
cared much if I knew stuff already or not, they just expected me to
LEARN NEW THINGS QUICKLY. For example, I left Intel after 5-1/2 years
and went to work with Moto on the team porting Unix System V Rel 3 to
the 68020; I had never seen or heard of Unix or C prior to that. After
PC/MS-DOS hit the scene, the shells in Unix seemed like a breath of
fresh air! Given the attitudes in hiring today, there’s no way in
hell I’d be hired for that job even though I was great at it! (FWIW,
I got laid-off at both Intel and Moto.)
I went out on my own in the 90’s and was the primary architect and
developer at four startups. The amount of research I had to do for
them probably came close to qualifying for a couple of PhDs. I
absolutely LOVED it, but the politics SUCKED. Two of the companies
were imploded due to the egos of the investors; one had the life
snorted out of it because of the founder’s drug habit; and one came
so close to succeeding, but got unexpectedly bought up by Computer
Associates who put our software on a shelf in a back room because they
didn’t understand what made it different from other software they
were already marketing. (The founders tried valiantly to acquire it
back from CA for over a year, with no success. It was seen as
worthless to CA, but they saw it as a threat if it were to fall into
competitor’s hands.)
In 2000 I took a job at the ASU BioDesign Institute and worked there
for around 4 years. While I was there, I did get to take advantage of
lots of my compiler-related knowledge because it turned out that half
of the work I did involved writing import parsers for whatever crazy
data files Biologists working on their Master’s Degrees created.
They maybe had one programming class, and they were expected to write
all of the software needed to support their Master’s thesis. The
software I worked on needed to be able to import EVERY data file
format that someone at some university somewhere in the world
published as part of their thesis that was of interest to other
researchers anywhere in the world.
Pretty much all of the work I’ve been hired to do since then (2005+)
was based entirely on the fact that I had 10+ years working with
Delphi. (It could have been COBOL or FORTRAN.) Nobody gave a rat’s
ass about my education, background, patents, or any of that. Nobody
really cared what I had to say except as it related to
customer-specific programming requests that affected their
Delphi-based apps.
At one place, something I was totally capable of doing in a few months
was out-sourced at great expense to a team of peole at some company
that spend over a year and finally gave up ... and the other guy on
the team finished. (I had taken another job by then.) At another
place, I found some patterns that turned up over 100 bugs in code that
was easy to see once the code patterns were pointed out; but I was
basically was fired because I kept trying for 6 months to fix them and
was repeatedly told that only bugs reported by the customer can be
fixed. Seriously. They were more concerned with getting ISO-900x and
CMMI Level-3 certification than ensuring their code was bug-free. To
them, their PROCESS was more important than the PRODUCT it was used to
manage.
I’ve been hired several times and told EXPLICITLY that one of the
main reasons they were hiring me was to keep their asses out of the
fire by letting them know if there was anything I might find them
doing that was seriously in need of attention. I found plenty of
things at different places, and nobody wanted to hear about ANY of it.
At a few places, the code blew up and I was blamed. I later learned
that a lot of contractors are hired specifically as “fall guys”
for known problems that are about to blow up. Being able to blame the
contractors gets the managers off-the-hook and their bosses then
extend their budgets and schedules in ways they refused to do
previously. Turns out this is an old game in the world of engineering
contract work. Remember when the Space Shuttle Challenger blew up
during launch? A lot of the people trying to alert upper management
about the potential problem were … contractors.
I am honestly fed up with how software companies are being run since
the whole "dot-com meltdown” in 2000.
All of this is to say, I don’t think a CS degree has been worth the
paper it’s printed on since 2004 or so.
Compiler design is just a one-semester class. That, along with things
like Database Design, Formal Automata Theory, Finite Math Theory, Data
Structures, Analysis of Algorithms, and other core topics, are taught
as part of every CS program in the world. NOBODY CARES ABOUT ANY OF
IT TODAY!
Nobody is building custom compilers or database servers or things that
most CS degrees were designed to address — slow CPUs, small address
spaces, small primary memory (RAM), limiited secondary memory (HDDs),
slow computer-to-computer communications. NONE of it matters today!
From the 90’s until 2005 or so, “client-server architectures”
were all the rage. Today it’s REST-based micro-services being
accessed by mobile apps running on phones and tablets, and the overall
latencies today even over wireless devices to cloud-based storage than
when the server was in the next room and they were connected with
ethernet cables.
If you need code for something unusual today, just spend a little
while searching for it online, because it’s very likely someone has
already solved the problem. Who needs a CS degree to search for stuff
in Google?
State Farm has hired thousands of people right out of college with
only one programming class under their belt, and puts them through an
intensive 6-month internal Java training program. These are the people
they have writing and maintaining their software today. I kept trying
to get hired by them and get put through their class. They said it was
only for new college grads, not “senior developers” who they
expected to have at least 5 years of solid java programming under
their belt already.
From what I’ve heard, they are not interested in people with CS
degrees, or even a lot of programming experience. But if you go
through Woz-U or a similar 3-month “boot camp", State Farm will very
likely hire YOU as an entry-level programmer. That’s all it takes.
-David Schwartz
On Aug 22, 2022, at 7:27 AM, [email protected] wrote:
On 2022-08-22 00:17, David Schwartz via PLUG-discuss wrote:
Not sure what good a CS degree is these days. Seems like all
anybody
caress about today is “at least 3 years hands-on experience with
xyz
and abc” to get hired for stuff.
I consider a CS degree as an engineer. Those who follow this path
can do things the rest of us cannot do like create parsers,
compilers, and interpreters. Am I wrong?
I'm a programmer. I do not have the skills of a CS degree holder.
You (David) can do lots of neat things that I cannot. I think your
niche is smaller if you want to do engineering class work.
I had a love/hate relationship with IT for a long time because I
struggled to find adequate W2 employment. I had to become a
freelancer to rise to my potential, and that could be a book.
I bet you could spend a couple months learning Kotlin, put up a
website and do freelance Kotlin development.
I have read articles that say freelancing will take over the world
in the future. As companies start to realize they only need a core
of employees supplemented by freelancers, then that will become the
norm.
It has been my experience that small businesses mostly hire
freelancers and have no IT staff.
---------------------------------------------------
PLUG-discuss mailing list - [email protected]
To subscribe, unsubscribe, or to change your mail settings:
https://lists.phxlinux.org/mailman/listinfo/plug-discuss
---------------------------------------------------
PLUG-discuss mailing list - [email protected]
To subscribe, unsubscribe, or to change your mail settings:
https://lists.phxlinux.org/mailman/listinfo/plug-discuss