Ask HN: What is essential reading for learning modern web development? - cribbinm
======
taw55
I'll add some perf suggestions:

High Performance Websites and Even Faster Websites
[http://shop.oreilly.com/product/9780596529307.do](http://shop.oreilly.com/product/9780596529307.do)
[http://shop.oreilly.com/product/9780596522315.do](http://shop.oreilly.com/product/9780596522315.do)

These two on website performance are good, though they're a bit dated (pre
http2 etc).

High Performance Browser Networking
[http://shop.oreilly.com/product/0636920028048.do](http://shop.oreilly.com/product/0636920028048.do)

I never fully read this one but it's really good, probably required reading if
you're serious about webdev

CSS: BEM/OOCSS/SMACSS methodologies, they make you think critically about the
structure of you styles. Harry Roberts does good writeups on maintainable css.

I second Don't Make Me Think and I also liked Eloquent Javascript (that zoo
has a bunch of new exotic animals since, so I don't know if it's the best bet.
It's a fun book though)

~~~
sn9
The last of your links is also available online for free:
[https://hpbn.co/](https://hpbn.co/)

------
indescions_2017
Before diving into React or Phoenix, take a step back and survey the state of
the Web APIs. From hardware and device access, to client side storage, web of
things, gpu compute, and high performance peer nets. There are infinite
possibilities to combine different technologies into new innovations. And new
additions arriving almost daily to become inspired by, such as
SharedArrayBuffers and Atomics.

My advice is to find a topic you genuinely enjoy that is much in demand,
perhaps web payments or security, and really gain some mastery in that area.
Blog about your progress, publish articles and tutorials and of course build
things! Then you will be on your way to becoming an authority and the go-to
person for advice.

Two good blogs to get started are Mozilla Hacks and HTML5Rocks:

[https://hacks.mozilla.org/](https://hacks.mozilla.org/)

[https://www.html5rocks.com/](https://www.html5rocks.com/)

Good Luck!

------
tmnvix
Approaching 20 years old now but more relevant than ever is 'Don't Make Me
Think' by Steve Krug.

[https://en.wikipedia.org/wiki/Don%27t_Make_Me_Think](https://en.wikipedia.org/wiki/Don%27t_Make_Me_Think)

------
afarrell
If you're a backend developer who gets frustrated by the whack-a-mole quality
of doing frontend layout with your current understanding, I recommend
[http://book.mixu.net/css/](http://book.mixu.net/css/)

------
Rjevski
If you're starting out with PHP then read
[http://www.phptherightway.com](http://www.phptherightway.com). In fact I'd
say read it even if you're not using PHP as most of the concepts still apply.

------
sova
Modern has many conflicting frameworks of code organization, so learn the
basic mouse trap: html,css,js and then take the initiative to learn a
ListProcessor (Lisp) based language and unclog your brain by mastering map,
reduce, and apply.

The tools are still primitive in my opinion, but precision is how computers
behave. Making the leap toward Functional Programming has changed my coding
life. Before recommending any more books, I would recommend watching Rich
Hickeys talks on InfoQ about the general state of programming in general with
such classics as "Are we there yet"

Essential reading might as well be direct links to helpful source code.
Imitating the masters is not a poor approach, but studying their way of
practice and doing so yourself is far superior.

------
adenozin
This gitBook is about front-end but it has great resources and gives you good
direction about front-end.
[https://www.gitbook.com/book/frontendmasters/front-end-
handb...](https://www.gitbook.com/book/frontendmasters/front-end-
handbook-2017/details)

------
ely-s
Reading HN, Smashing Magazine, and A List Apart will pay off greatly in a few
years.

------
thorin
To learn, I'd start by absorbing the
[https://www.w3schools.com](https://www.w3schools.com) web site. Also looking
at the rendering of pages in google web tools or similar will let you know
what you're getting into. For server side look at any modern rest framework
and get started with that e.g. Django rest, .net web api, rails etc.

~~~
txmjs
I would encourage people to use MDN as a reference
([https://developer.mozilla.org/en-US/](https://developer.mozilla.org/en-US/))
instead of w3schools, far more in depth and useful.

------
pvsukale3
Eloquent JavaScript

~~~
Lordarminius
Eloquent Javascript is outdated; it does not cover ES6. The book is well
written and it has nice problem sets but a reader will end up frustrated by
the obsolete information.

 _Object Oriented Javascript_ by Antani and Stephanov is more current

