Granny's Programming Pearls
"inside of every large program is a small program struggling to get out"
JavaRanch.com/granny.jsp
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Devaka Cooray
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Bear Bibeault
Sheriffs:
  • Paul Clapham
  • Knute Snortum
  • Rob Spoor
Saloon Keepers:
  • Tim Moores
  • Ron McLeod
  • Piet Souris
  • Stephan van Hulst
  • Carey Brown
Bartenders:
  • Tim Holloway
  • Frits Walraven
  • Ganesh Patekar

You Don't Know JS: what is series about?

 
Ranch Hand
Posts: 419
Mac jQuery Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome Kyle Simpson,

I have a very general question about your book series. I have been programming in JavaScript for almost 4 years now. I have Read couple of really good books including Javascript for Web Developers By Nicholas, Secrets of the JavaScript Ninja and off course JavaScript the good parts.

But for some reason whenever I saw your books in recommendations and tweets by some really good developers. I always wonder what is it that these developers don't know about JavaScript? I do not count myself as a best JavaScript developer but I am doing ok. So I am very intrigued to know what part of JS I don't know that I can learn from these books? So here are couple of things I wanted to ask:

(1) What is this series all about? Is it basics of JavaScript or some hidden gems?
(2) Is it about writing high performance JavaScript? Like how libraries like asm.js generate high performance JavaScript?
(3) How does this series make me a different JavaScript programmer? What changes I should expect in my daily programming?

Really curious to know more about your books. Thanks for all the Hardwork.
 
Author
Posts: 22
5
  • Likes 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
> (1) What is this series all about? Is it basics of JavaScript or some hidden gems?

YDKJS is a six book series. The first book is definitely beginner material and an overview for the rest of the series. The rest of the books build successively on each other and go deeper and deeper into each topic.

The title is intended to suggest that none of us ever fully know JavaScript, including myself. It's to challenge you to embrace a constant mindset of learning and digging deeper, instead of thinking you arrive at some magical "JS mastery" level after you get a certain title at your job.

Moreover, the problem with Crockford's "The Good Parts" is that it taught several generations of developers that there's only a small sliver of the language worth learning. I think this is dangerous and unhelpful. I think we should learn all parts of JS, deeply, even the stuff he thinks is "bad". This series challenges the notion that you can just learn a little bit and be OK. It forces you to confront the stuff that you only kinda partially sorta know and dig deeper until you actually fully understand it.

To give you an idea of how these books are different, take "Scope & Closures". In the first chapter, I actually dive into how the JS compiler works and what that means for how it processes your code. We use that to understand the ins and outs of lexical scope. So, basically, it's a simple, fundamental concept like scope, but much much deeper and more thorough than most devs are used to going. You should expect to have all topics in the series covered in that manner, going beneath the surface understandings to deeper knowledge.


> (2) Is it about writing high performance JavaScript? Like how libraries like asm.js generate high performance JavaScript?

The fifth book (Async & Performance) does have chapters 5 and 6 which focus on performance, but more about adjusting your perspective to understand how we can actually deal with performance in a reasonable way. It's a very different treatment of the topic than you're used to.


> (3) How does this series make me a different JavaScript programmer? What changes I should expect in my daily programming?

The biggest thing that will change is that you'll see JS differently, not as some deeply flawed language that we suffer and put up with, but as a beautiful and complicated and nuanced language with an incredible amount of power built in, waiting to be unlocked by those who learn it more deeply. This will infect your thinking about all things you do in JS. It'll cause you to be curious about that hot new JS framework and not just accept the hype. It'll cause you to doubt claims made by others and claimed as true when you can tell now that it's just cult myth.

You will know JS more fully than ever before. That is all I can promise. But I believe that will change the way you write JS, in that every line you write you'll be unable to do so without thinking how and why it is the way it is. You'll solve problems faster because you'll know why something broke and not just fumbling around on Stack Overflow for the next copy-n-paste solution.
 
Ranch Hand
Posts: 396
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Kyle,
I really liked your answer to ths question especially the points made in
part (3) below.

Your points about

some deeply flawed language

and flailing around on Stack Overflow reflect a lot of my experience with Javascript .
I think that has a lot to do with the Javascript books I've read.
You learn the syntax and that's about it.

It sounds like a good series.

Thank you.
Paul Nisbett
 
pawan chopra
Ranch Hand
Posts: 419
Mac jQuery Objective C
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank you so much Kyle. Appreciate your time.
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!