
Show HN: The Vue.js Handbook – Free 120 pages ebook - flaviocopes
https://vuehandbook.com
======
throwawayqdhd
I see people here complaining about the author asking for email addresses, and
I can't help but think: what a coup GDPR has been for large tech companies.

The author has spent hours creating a useful guide that he is giving away for
free in exchange for an email address. He likely hopes to tap into this
audience later for a paid product.

Reaching this audience via email is cheap and easy. He can email them as many
times as he wants, even if he doesn't want to sell them anything.

But because of GDPR, he can't depend on email so much. He has to rely on other
tactics to reach his audience again.

And what are those tactics?

Paid advertising, of course.

No one stands to benefit more from GDPR than Google and Facebook. Everyone
here cheering for GDPR needs to think how it placed all the advertising power
away from mediums you can control (email) and over to ad companies.

As a consumer, you can unsubscribe and block emails easily. As a creator, you
can set up a mail server easily.

You can't do that with ads, at least without relying on outside tech

~~~
IloveHN84
What happens if my email goes shared with other parties I don't know? GDPR was
a real help for end users, reducing the amount of spam in mailboxes.

~~~
dabernathy89
> GDPR was a real help for end users, reducing the amount of spam in mailboxes

It just went into effect - has this been measured already?

~~~
osrec
Well, my personal inbox was filled with even more emails from every company I
ever signed up to, telling me about GDPR. Initially at least the effect has
been quite the opposite.

------
alixaxel
Your data collection is not GDPR compliant, see
[https://litmus.com/blog/5-things-you-must-know-about-
email-c...](https://litmus.com/blog/5-things-you-must-know-about-email-
consent-under-gdpr).

~~~
mjewtoo
Why do you believe the data collection is not GDPR compliant?

I think that the site is very clear on how my data will be handled and what my
email will be used for (sending me 3 emails).

To quote from your pasted link: 'The new regulation requires that brands
collect affirmative consent that is “freely given, specific, informed and
unambiguous” to be compliant.'

I submit the data freely to receive the information stated on the page.

~~~
Nullabillity
It's not "freely given" if it's in exchange for a service.

------
zerr
In js/front-end world, what would be the closest to those RAD/component based
toolkits like Qt, wxWidgets, Delphi/VCL, WinForms? Is Vue a good candidate or
maybe Angular is a better choice?

~~~
noir_lord
Vue has single file components so you can build your own components which I
do.

If you want a more guided/RAD approach maybe emberjs is more what you want to
be looking at.

~~~
hardwaresofton
EmberJS strives to be a box with every tool you'll ever need -- it's what you
should be comparing to Angular, if anything.

EmberJS's equivalent to Vue would be Glimmer[0], which _theoretically_ can be
used outside of Ember but might be hard, I've never tried it.

[0]: [https://glimmerjs.com/](https://glimmerjs.com/)

~~~
omnimus
This is simply not true. Vue is not just rendering engine it does take care of
lot of things. The fact that it is lightweight and modular (so for example it
does not have router bundled but there is official one) does not make it
worse. Vue is also its own ecostystem same as Angular or Ember. The ecosystem
is in fact probably even bigger than any of them now.

~~~
hardwaresofton
> Vue is not just rendering engine

I did not call Vue a rendering engine. I stated that Ember's closest
equivalent is Glimmer. I do think that statement is incorrect on it's face now
that you've brought it up -- but I think that's because the closest thing
would be ember's `View`, and not just Glimmer because the "View" abstraction
is what Vue provides, and Ember's had `View`s long before Glimmer (they just
worked slightly differently under the covers).

> The fact that it is lightweight and modular (...) does not make it worse

I did not ascribe a value judgement to Vue. I am a huge fan of Vue and use it
a lot in my own projects and at previous jobs. I do not believe it's worse,
but the simple fact is that Vue _by itself_ is not comprable to Ember at all.
They're different leagues of tools, Vue is a knife, Ember is a swiss army
knife. Different problem domains that only _sometimes_ overlap.

> Vue is also its own ecosystem same as Angular or Ember

Yes, Vue does have it's own ecosystem, but they are not the same as Angular or
Ember.

> The ecosystem is in fact probably even bigger than any of them now

I don't agree with this. Angular 1 became the defacto frontend framework for
corporations -- this spawns a LOT of ecosystem from people working on Angular
everyday. Next was React, and Vue is just coming up NOW. I find it hard to
believe that Vue has already gained the same amount of mind share as either
Angular or React in terms of ecosystem.

Ember on the other hand has somehow managed to not land the lucrative
corporation mindshare.

------
SippinLean
Thanks, this looks helpful. If you have a friend who's a native English
speaker you might ask them to read it over for you. There's some awkward
phrasing and tenses used throughout (I'm guessing you're European). Not
complaining about free education, just trying to be constructive.

~~~
flaviocopes
Thank you, yes I'm Italian - you're right, I should have asked someone to
proofread it! I'm sorry for this.

------
rolleiflex
Nice work! To counterbalance the comments here a little bit, I think an email
address for a book is more than a fair exchange. My one suggestion would be to
have a HTML version, so that mobile users can read it easier. I do most of my
reading on my phone and PDFs are really hard to read, since the text size
doesn’t scale. This doesn’t need to be extra effort, you could probably just
compile whatever underlying markdown document you probably have that you used
to create the PDF and save it as a HTML file, and send link to it (or send the
HTML file itself) after email signup alongside the PDF.

------
j45
This is a lot of work and value you are adding to the world for free, thanks
for putting it out there.

An email address is a small thing to ask for when what you are providing is
much more than 5-10 hours of work. I guess it's a fair trade for me right now
because I'm exploring Vue.js and it looks to be much more mature than 1-2
years ago.

------
jpangs88
I gave a quick glance through this and it seems pretty good especially for
beginners. I noticed at the beginning it goes straight into installing the vue
cli with yarn or npm. Might be helpful for beginners to know what npm/yarn
(and for that matter node) is and at the very least how to install it.

I understand that this is supposed to go with a complimentary course which
might explain these things, but might be good for reference.

That being said this seems like a great resource that I would recommend to any
new people that are starting with web front end, great work!

~~~
gulabjamyn
Why is npm required?

~~~
philliphaydon
The first part of book is like setup and tools. The first example hello world
doesn’t use npm at all. Just a HTML file.

------
candu
Privacy Badger [1] blocks ConvertKit's email-gathering form for me.

[1] [https://www.eff.org/privacybadger](https://www.eff.org/privacybadger)

~~~
O1111OOO
I find RequestPolicy[0,1] to be both a powerful and easy way to manage cross-
site requests. It too blocked ConvertKit (with options: temporarily allow,
whitelist, whitelist only for vuehandbook.com, etc).

Mentioning it because it isn't as well-known as other security/privacy
blockers.

[0]
[https://requestpolicycontinued.github.io/](https://requestpolicycontinued.github.io/)

[1] [https://www.requestpolicy.com/](https://www.requestpolicy.com/)

------
thetest3r
It's reminiscent of the Succinctly series by Syncfusion. We were considering
Vue at our workplace, this will make it a quick read. Thanks!

------
faitswulff
Hi flaviocopes, thanks for the write up! It would be nice as a non-beginner
for the ebook to have an index so I could skim the contents.

~~~
nwsm
I briefly skimmed it. It's basically the vuejs.org docs stretched out over 120
pages

------
xzcvczx
direct link for those who don't want their email address mined
[https://convertkit.s3.amazonaws.com/landing_pages/incentives...](https://convertkit.s3.amazonaws.com/landing_pages/incentives/000/412/938/original/The_Vue.js_Handbook.pdf?1529992803)

~~~
hackyman
Seems like your link no longer works

~~~
flaviocopes
The email "wall" is there because I want to keep in touch with my audience and
possibly get back with more learning resources. But if anyone is interested in
a direct link and skip that, here it is :)

[https://www.dropbox.com/s/ai7j5ei0f24aoz6/The%20Vue.js%20Han...](https://www.dropbox.com/s/ai7j5ei0f24aoz6/The%20Vue.js%20Han..).

~~~
Double_a_92
Thanks :) It's probably also better for you, since you avoid people that would
use bogus email adresses.

------
alixaxel
Isn't requiring an email to download an ebook one of the scenarios that GDPR
states as an example of non-compliance?

~~~
wj
I honestly haven't dived into GDPR but I don't see a problem with a website
owner offering something of value (an ebook) in exchange for something else of
value (an email address). Disallowing that voluntary transactions oversteps
the bounds of what I view a free state to be.

Would adding a second checkbox ("I'm not a resident of the EU") be a way for a
site owner to still provide this to exchange to non-EU residents?

~~~
bildung
The exchange email -> ebook in itself isn't problematic with regards to the
GDPR, phrasing it not as an exchange but a free gift is.

edit: You may of course not like my comment, but it is factually correct: GDPR
really doesn't forbid combining the newsletter entry with a bait like a free
ebook, as long as you don't phrase the newsletter membership as "free" and use
double opt-in.

~~~
wj
I didn't downvote you but I do like that your edit provides more info!

------
thewhitetulip
Shameless plug: Few years back I was into SPAs and I started writing a
tutorial for Vue.js

[https://github.com/thewhitetulip/intro-to-
vuejs](https://github.com/thewhitetulip/intro-to-vuejs)

