
Is there any value in just writing HTML and CSS? - mpweiher
https://medium.com/@mandy.michael/is-there-any-value-in-people-who-cannot-write-javascript-d0a66b16de06
======
omegote
I don't understand why the author is so surprised about the reaction of her
audience, who would not hire someone who just does HTML + CSS. In particular,
I totally disagree with this paragraph:

> I understand the desire to have people who can do a lot of things. What I
> don’t understand is why it’s okay if you can “just write JS”, but somehow
> you’re not good enough if you “just write HTML and CSS”.

_Writing_ JavaScript is programming. Writing HTML and CSS is not. Programming
is several orders of magnitude harder than writing markup languages. Most of
the time HTML and CSS are just tools to show the results of something else,
they're auxiliary technologies, just like XML. You wouldn't hire a _XML & DTD
writer_, you expect a programmer to know (or have heard of) XML.

Anyone who blindly and directly compares "Just writing JS" with "just writing
HTML and CSS" is short-sighted.

~~~
Blackthorn
> _Writing_ JavaScript is programming. Writing HTML and CSS is not.
> Programming is several orders of magnitude harder than writing markup
> languages.

Hey, let's be fair here. I'm a great programmer, but I can't design worth
beans. They're totally different skills.

~~~
LoSboccacc
But I bet you can render data out using html snd given a design you can get
that html reasonably close with just some sweat and little stackoverflow
trips.

~~~
Blackthorn
I'm not a code monkey, and neither is a designer. "Given a design" is the
begging the question part. Who's design? Probably someone who only knows HTML
and CSS.

~~~
AstralStorm
Or probably Adobe or Corel suites (or open source equivalents) and the
limitations of website design. Not even the languages themselves.

You still need someone to translate it into a website. Whether they can handle
JS is secondary.

------
unholiness
Our company hired a guy who literally just wrote CSS, and it was an awesome
hire.

He had instinct for how the layout engine will do best, how to make really
clean and reusable structures, how to get smooth animations running. This
instinct was totally infectious. It had an impact on our culture around CSS
(taking it seriously and doing it right the first time) in the same way that
having someone who really knows logging, or concurrency, or db transactions,
can really make an impact if they're there near the start.

Along the way lots of people assumed he knew JS, which if anything probably
enforces the article's point. But before us he was just a smart guy whose side
projects involved reskinning CMS sites and making cool CSS animations.

After a year of avoiding it he did start writing JS, and being honest, our app
is pretty unique for needing that much love at that level — A year of time
just doing structural, design, and layout changes is totally not warranted,
almost anywhere.

However, I think there _is_, often, a false hierarchy that tends to build up
among developers, where somehow, all server work >>> all JS programming >>>
all design thought. This cultural "legitimacy" ranking, at best, leads to
people letting horribly incoherent styling pass code review without a second
thought. At worst it means high turnover in the people at the "bottom" of that
totem pole who feel disrespected. As someone who spends 80% of his time on the
server side I think this is an important bias to be aware of.

------
Waterluvian
I've worked with a number of brilliant UI/UX designers who use CSS+HTML as
tools. But I don't think you can expect proficiency in a few tools alone to
make you valuable.

It's kind of like saying, "I'm skilled with calculators." Vs. "I'm a
mathematician."

The full-time UI/UX designers I've worked with in my last few jobs have never
meaningfully wielded JavaScript to do their jobs. In some cases there's a
little hacking for prototypes, but never any production coding.

~~~
raihansaputra
Do you think it's a bottleneck for them to not understand JS? What they design
and produce using JS (mockups and prototypes for testing) won't be passed on
to production anyway. Or do you have a different experience?

~~~
Waterluvian
The bottleneck we experience is that we lack design capacity to keep up with
our engineering capacity. Thus is the plight of a startup I suppose, maybe?
Obviously I'm a very limited sample of experience but I've yet to think that
we could be doing better if my designers knew JS.

------
stephenr
Here's the thing: despite what JS fans will tell you, you _can_ make visually
appealing, quick-loading, useful page/site with just HTML+CSS(+images/svgs
etc) client side.

You don't _need_ JavaScript.

The reverse isn't true. You can't make a page out of just JavaScript. Even if
JS builds your DOM _and_ builds the styles for it (because hey, crazy people
have crazy ideas) the DOM and styles are still HTML + CSS. You still need to
know what the JS should build.

~~~
drivingmenuts
What do you call a Javascript programmer who doesn't know HTML and CSS?

A backend programmer.

~~~
AstralStorm
Only for tiny backs or huge rears. ;)

(Doing big things in JS right now is still asking for trouble.)

------
csense
For those of us who remember the Web of the 1990's, HTML was supposed to be a
simple markup language to allow ordinary folks to design websites.

I guess it turned out that non-professional website authors went with WYSIWYG
editors (anybody remember Netscape Composer and Dreamweaver?) -- and today
they've given up on entirely on creating their own site and just use hosted
solutions like Facebook or Medium.

On the other hand, professional websites and their customers ended up deciding
to create increasingly bulky, JS dependent monstrosities.

How can we get back to simple HTML websites without alienating users who've
grown used to modern design, developers who insist on using Javascript even
when it's unnecessary, and businesspeople who can't live without bars, videos,
and ads?

~~~
damosneeze
Look into the JAMstack. This is precisely what they are doing. In essence,
it's having a static front-end markup, leveraging API's for all your heavy
lifting needs, and utilizing JS when needed to make your sites interactive or
reactive.

[https://jamstack.org/](https://jamstack.org/)

Here's a great talk on the principles of the JAMstack by one of the leaders in
the field, Matt Biilmann, CEO of Netlify. He covers the essentials in about 5
minutes, but the rest of the 19 minute talk is worth listening to
[https://www.youtube.com/watch?v=c5UEHm8Kets](https://www.youtube.com/watch?v=c5UEHm8Kets)

------
edoceo
I have a habit of hiring entry level folks for CSR work. Generally not much
coding experience. Those that grow to want to contribute to our WebApp I start
with HTML+CSS. Asking them to redesign screens, or modify/tweak the UX. It's a
great way to start and many times their contributions make it in production.
This creates a positive feedback loop. Nearly everyone expands to some
scripting language after that (JS, bash, PHP, python).

My goal is to train them all up on coding but if you "only" know HTML+CSS
there is still room - or rather an open door to more.

It's just one rung on a mobius type ladder.

------
CM30
Eh, there's definitely some value in it. Despite a lot of web agencies and
startups focusing more on Javascript frameworks and whatever programming
language is in vogue at the moment, there's also a 'low end' web development
world which just delivers simple sites and projects.

Like say, the freelancers who sell premade WordPress themes with the logo and
content swapped out. Or smaller agencies that are pretty much either pure
HTML/CSS or HTML/CSS as a WordPress theme with no custom functionality besides
premade plugins.

These folks are less common at events (hence the lack of response to the
article author), but they definitely exist out there.

There's also obviously people who do HTML/CSS as part of a different role
(like say, desugn or marketing), or those few unlucky souls stuck doing
nothing but email templates.

So there are jobs out for people who specialise in purely HTML and CSS, as
well as opportunities to made in the market. They're just nowhere near as
glamorous or high paying as say, working at a large tech company.

On another note, I definitely agree with the article point about how expecting
people to 'know everything' can be worse than letting them focus on something
they're good at. Way too many job descriptions ask for 'experience' like:

In depth knowledge of HTML, CSS, Javascript, React, Node.js, Angular,PHP,
MySQL, Python, Ruby on Rails, Go, Perl, ColdFusion, WordPress, Drupal,
Magento, SEO, content writing, server configuration and tea making.

Not sure who exactly is that generalist, but they probably wouldn't have much
actual knowledge about any of those things.

------
ksikka
I was so on-board at the beginning - yes, html and css skills are undervalued.

And then the essay tried to generalize the lack of respect for HTML/CSS
specialists as an example of lack of respect for specialists compared to full-
stack devs. This is where I think the essay took a wrong turn.

The technical community has tremendous respect for backend or math
specialists. Now more than ever, ML and data science is cool. High performance
is cool. Security and cryptography are cool. Etc.

But HTML and CSS? There is a general attitude that they're "easy" and
javascript is "harder". But writing good HTML and CSS should be considered one
of the highest art forms. Good HTML and CSS makes the end user go "wow, this
is nice and clean" and makes the javascript developer go "wow, this is nice
and clean". Achieving both of these is so fricking hard!

~~~
watwut
It is odd attitude. Css is harder then javascript. I mean, javascript is quite
easy to learn, that is its biggest advantage.

~~~
AstralStorm
Only true as of language. If you're doing websites you get to learn
idiosyncrasies of browsers, DOM manipulation, asynchronous design, performance
considerations, etc. That on top of how HTML and CSS is laid out and converted
to DOM. Which is as hard if not harder.

Of course it is easy to produce toy projects.

------
marak830
Now to put my comment into context : I'm self taught.

I can now code quite comfortably in: c#, python, html, css, JavaScript, php,
MySQL queries and can learn most frameworks fairly quickly. (Infact I probably
missed a few things I have played with over the years).

Point being: if you can code htnl/css, from my point of view, it isn't such a
stretch to learn a more formal language is it?

(I did start with Qbasic and vb though, so I may be coming at this from the
wrong direction?)

Edit: after reading some more of these comments I can _almost_ understand, but
wouldn't someone who was able to show how they could work with htnl/css show
at least a basic understanding at a technical level and be worthwhile at an
entry level position?

~~~
drivingmenuts
> Point being: if you can code htnl/css, from my point of view, it isn't such
> a stretch to learn a more formal language is it?

No, it isn't, if that's your thing.

Personally, there are days I regret being a programmer and wish I had just
stuck with being a designer. Usually, it's the point where I'm struggling to
come up with something unique or distinctive.

Or when I realize that if I'd focused more on design, then I might be amazing
at it, rather than mediocre at design and programming.

But that's me. You do you.

~~~
marak830
Hmm maybe it's my point of view then - I only code in my free time or for some
contracts I manage to pick up.

I had assumed anyone that bothered to learn html/css would be interested in
coding in general though.

------
franciscop
I have been hired few times to _just_ write HTML and CSS. I _am_ really
knowledgeable about Javascript, but for some projects the hiring company (some
of which you know) just needed those bits so I provided those. When a company
is looking for advanced animations and transitions, with a big budget and fine
attention to detail they hire specifically for this. Of course this is not so
common, and I wouldn't expect the _owners_ of these kind of companies to be in
a random web dev conference, but there are some around.

------
fujiters
I think there's a general desire for a single employee to do all the things
because it's easier to put "all the things" in a job description than to set
up an environment in which specialists effectively interact. My employer, for
one, has taken it to an extreme in making incentives such that one should have
the necessary domain knowledge to find a problem to solve without being told
what to work on, then go build the thing from the ground up.

------
kribblo
It's extremely rare to find someone who don't do JS but is also actually
_good_ at HTML+CSS, as in usable markup and styles. But I'd hire that person
if I found him.

------
dogruck
Suppose the thesis is true -- the job market has undervalued workers who can't
write JS.

Why would the obvious arbitrage persist?

~~~
sidlls
Not that I agree that "HTML + CSS" only workers are improperly valued less
than JS coders, but one reason that might explain if this were the case could
be because the technology job market isn't as rational or merit-based as some
assume. Instead it's festooned with the same cult-of-X (where "X" is
"technology", "framework", etc.) bandwagoning effect many practitioners of
programming mock other fields for having.

There's no reason, as I see it, to think that an "arbitrage" of this sort
couldn't persist for some time (years/decades) in this industry: it's too
insular and full of itself in many respects.

~~~
dogruck
You certainly could be right. But what's your conviction level? Is it as high
as "earth's gravitational pull is real" or is it lower?

If it's high, can't you think of some way of capturing the arbitrage? Perhaps
starting a company that employs HTML+CSS wizards?

~~~
sidlls
Conviction level for which?

For the state of the industry comment: quite high. Developers think too highly
of themselves, their ability to reason (in general), and assume unjustifiably
that this industry is somehow more merit-based and rational than others.

For the particular arbitrage you describe: next to none. I know enough
JavaScript and enough webdevs to know I don't care to know any more. I'll
stick with data engineering, computational research, and systems programming,
thanks very much.

