Andrei's list of barriers to D adoption

Jonathan M Davis via Digitalmars-d digitalmars-d at puremagic.com
Fri Jun 10 08:27:03 PDT 2016


On Friday, June 10, 2016 07:45:03 Ola Fosheim Grøstad via Digitalmars-d wrote:
> On Friday, 10 June 2016 at 05:37:37 UTC, Jonathan M Davis wrote:
> > I assume that you're not from the US?
>
> Right, I am in Oslo (Norway).
>
> > In the US at least, professional programmers are almost always
> > referred to officially as software engineers (though they use
> > the term programmers informally all the time), whereas the
> > terms computer science and computer scientist are generally
> > reserved for academics
>
> Well, I don't know what is "official". Some norwegian companies
> seem to use convoluted "international business" terminology for
> everything, which is just weird and "snobbish". I think "system
> developer" ("systemutvikler") is the broad general term here.

Well, I meant official as in what someone's job title would be. Most
developers have titles like "Software Engineer" or "Senior Softweer
Engineer." They'e frequently called programmers and/or software developers
when not talking about titles.

> So you can be an "informatiker" (broad term for your education)
> with an education in the fields of "computer science" and
> "software engineering", and work in the role of a "system
> developer".
>
> If you have a bachelor that fulfills the requirements for
> starting on a comp.sci. master then you are a computer scientist,
> but if you have a bachelor that doesn't and focus more on
> practical computing then you are a software engineer?
>
> You can have an education that is all about discrete math and
> still be a computer scientist. You couldn't then say you have a
> bachelor in software engineering, as it would be wrong. Likewise,
> you can have a bachelor in software engineering and barely know
> anything about complexity theory.

Yeah. Most universities in the US have a Computer Science degree, but some
have Software Engineering as a separate degree. My college had Computer
Science, Software Engineer, and Computer Engineering, which is atypical. All
of them took practical courses, but the SE guys didn't have to take some of
the more theoretical stuff and instead took additional classes focused on
working on projects in teams and whatnot. And CPE was basically a hybrid
between Computer Science and Electrical Engineering with an aim towards
embedded systems. But all of them had more of a practical focus than is the
case at many schools, because the school's motto is "learn by doing," and
they focus a lot on the practical side of things, whereas many Computer
Science programs suffer from not enough practical skills being taught. The
college in the city where I lived for my last job is notoriously bad at
teaching their Computer Science students much in the way of practical
skills.

I think that it's by far the most typical though that someone gets a degree
in Computer Science (with varying degrees of practical skils involved) and
then takes a job as a Software Engineer. And if you got a good focus on
pratical skills in school in addition to the theory, then you went to a good
school, whereas some schools do a very poor job on the practical side of
things.

> > And while the term informatics (or very similar terms) are used
> > in several other languages/countries, I've never heard the term
> > used in the US except to mention that some other
> > languages/countries use the term informatics for computer
> > science, and I'm willing to bet that relatively few programmers
> > in the US have ever even heard the term informatics.
>
> Yes, but it makes sense to distinguish between "computer science"
> (the timeless math and concepts behind computing) and "software
> engineering" (contemporary development methodology and practice).
> Although I think an education should cover both. "Informatics"
> just covers it all (as an educational field).

Agreed. A good education covers both the theoritical stuff and the practical
stuff, and some schools do distinguish based on what the focus of their
program is, but in the US at least, it's very common to have a Computer
Science program and less common to have a Software Engineering program
(though I think that Software Engineering degrees are becoming more common).

- Jonathan M Davis




More information about the Digitalmars-d mailing list