
Angular 2 Fundamentals Course - mgadams3
http://courses.angularclass.com/courses/angular-2-fundamentals
======
gdi2290
Angular 2 is great, just look at all the features you get: WebWorker, Server-
Side Rendering, mobile, progressive web application, Lazy loading support,
Router, Material Components, Precompile your app. Tree-Shaking support, fast
rendering, CLI, and TypeScript. The framework is backed by Google and
Microsoft

~~~
kimshibal
You don't need all that to create SPA app. it's bloated framework.

~~~
andys627
I wonder where the happy medium is. Setting up React/Redux/React-redux/react-
router/react-redux-router/react-redux-router-thunk/webpack-hot-module-oh-my-
god-what-am-i-doing takes forever.

~~~
yogthos
Honestly, the fact that people put up with this in Js ecosystem amazes me to
no end. I've been working with ClojureScript on the front-end for the past
year, and it's just night and day.

There's a single build tool ([http://leiningen.org/](http://leiningen.org/)),
and it manages dependencies, tests, builds, etc. Things just work.

Setting up a new project is as simple as:

lein new reagent-frontend myapp

I can go and start developing it by running

lein figwheel

After it starts I can open the browser at localhost:3449 and any changes I
make in the source will be immediately reflected. Once I want to package for
release I just do:

lein clean lein release

That's it, I now have minified and pruned Js file that's ready for production.

~~~
danabramov
This is pretty much what we’re doing with Create React App.

    
    
        npm i -g create-react-app
        create-react-app my-app
        cd my-app
        npm start # start devserver
        npm run build # build for production

~~~
yogthos
Sure, but how do you go about doing things like managing dependencies, doing
hot code loading, running tests, and so on?

------
sdegutis
Interesting coincidence. This week I've been tasked with looking into a
JavaScript framework to replace our pure-Clojure stack at work.

One of the front-end candidates is Angular. But we're considering cutting it
from the race.

The three main things we're looking for in a front-end framework:

1\. Longevity: we don't want to adopt yet another fad framework that we'll
have to replace in 2017. The current trend looks to be moving towards React-
style FRP, and Angular seems to be catching up in version 2, but nobody seems
to be using that yet, which means nobody will start using it. It looks like
another Python 3 problem to me. I don't see Angular lasting long.

2\. Flexibility: we want to quickly be able to change what pages we have and
what's on them, without needing to tear down and rewrite the entire front-end.
If Angular is only just now beginning to adopt React-like patterns, how can I
be assured that it got them _right_ , and that I won't run into rigidity
issues 2 weeks into writing Angular code?

3\. Convention over configuration: our data will live in MongoDB, so all our
models are straightforward JSON. I'm hoping to find a stack that _assumes_
this and doesn't require me to write tons of boilerplate that should be
assumed for me by my frameworks. I'm not sure how Angular fares in this, but
so far none of the candidates really shine in this area.

For the record, we're currently looking into Sails + Ember + Mongo. But we're
not super excited about this since it still doesn't look like it'll hit all
three of our needs really well. I'm particularly concerned that Ember is going
to have the same issues as Angular, especially if the community is looking to
regularize tools around React.

~~~
JustSomeNobody
> Longevity: we don't want to adopt yet another fad framework that we'll have
> to replace in 2017.

No such thing. They're all pretty much fad frameworks.

~~~
sdegutis
Looking back, though, I might have said the same thing about Rails or Sinatra
or Laravel, but they stood the test of time, and people still use them. A lot
of what gives a framework longevity is just whether or not big players adopt
them and developers love them, these two factors will go a long way in
ensuring a framework continues to get upgrades and continuous maintenance. At
least longer than Backbone, anyway.

~~~
davidw
So Angular is the COBOL of Javascript frameworks?

Actually, I think it's probably more comparable to some kind of Java
FactoryProviderServiceFactory thing.

------
adolph
"Learn Angular 2 fundamentals while rebuilding a real app."

Wouldn't it be great to turn business requirements into code training
documentation and crowdsource the development of things?

~~~
disease
I laughed. Then I started to think.

------
smrtinsert
I've been reading Switching to Angular 2. Are collections still propagated via
EventEmitter<Type>? Seems like the implementation is bleeding into the user
code.

I maintain Angular continues to be a bad reimplementation of JSF except mostly
on the client side.

~~~
Hendrixer
Not sure what you mean by collections, but the EventEmitter is just an alias
for a Subscriber in RxJS. So it's an observable.

------
taesu
I heard angular is a framework and react is lib. angular 2 or react. Coming
from nodejs, python, php, jquery experience which should I learn?

~~~
kimshibal
Ignore both. Learn vue.js to get shit done.

~~~
sdegutis
That doesn't address the issues the comment just above you (at time of
writing) brings up, namely that even with Vue you still need to set up all the
tool chain around it, whereas Angular brings a lot of that to the table for
you.

~~~
kimshibal
I handle a big React app at my job. It's messy as fuck with JSX. We made a
transition to Vue. Couldn't be happier.

~~~
hugozap
What in particular about JSX makes it messy compared to vue? Messy template
code can happen in both.

~~~
clivestaples
Vue templates support conditional rendering (v-if/v-show/v-else) which I
didn't realize I missed until using them. Also, conventions around component
data are really nice and help keep markup tidy and very readable.

I like to think of Vue as React with sensible conventions. That said, both are
terrific and solve UI problems very elegantly.

~~~
troncheadle
React handles conditional rendering better imo. You use regular JS instead of
having to learn a new API. You can use control logic in your render methods to
great effect.

~~~
clivestaples
I definitely agree that React is clean for the reasons you state and I always
enjoy building UIs with it. I suppose my comment was just a reflection on the
differences that I found refreshing - to my surprise.

------
_alexander_
I have only one question - when NG2 will be released? Because now it is not
possible build real applications, many libraries are not stable, and still in
beta or rc... Four month I'm trying to do real application and I must say that
it was my big mistake when I decided use Ng2., with every new release I always
have troubles with some dependencies or with new API, and there are no many
stable components which I can use without pain. Ng2 has good promotion however
we need wait official release., and then make some conclusions about it.

~~~
georgefrick
I've been working on an enterprise app with Angular 2 for over a month now and
it's been mostly ok. I think the only horrible problem was the change in the
form framework that went largely undocumented (super secret doc:
[https://docs.google.com/document/u/1/d/1RIezQqE4aEhBRmArIAS1...](https://docs.google.com/document/u/1/d/1RIezQqE4aEhBRmArIAS1mRIZtWFf6JxN_7B4meyWK0Y/pub))

Once you get to forms 0.2.0 and rc4 of everything else; the framework is
beautiful and even though I hated Angular 1.x with a passion, Angular 2 is
awesome.

~~~
_alexander_
What about new router? And yes NG2 much better than NG1, I agree with you.

------
sjnair96
If anyone has ever tried Anthony Alicea's JS/NodeJS/Angular1 course, please
let me know if AngularClass' or any other course is similar to it. I really
really liked anthony's course as it gave quite a deep look into sub topics,
which are usually only attainable from books, while at the same time keeping
it very interesting and also contain lots of best practice material and
keeping a healthy focus on understanding over imitating courses. Do let me
know if you guys know any other courses of the same style.

------
pawanpe
Just wanted to say Thanks for the course link!

------
atjoslin
AngularClass knows what they're doing. This course is gonna be legit.

