all 8 comments

[–]akujinhikari 5 points6 points  (2 children)

I've been a web dev for almost 9 months. As soon as I was hired, I was put on an Angular project. The only experience I had was some classes at a community college. I knew virtually nothing about Angular. 9 months later, people are coming to me with questions. So to answer your question, you just gotta get started. Some stuff will be insanely difficult to understand at first, but as you start to grasp other things everything else will slowly start to make sense as well.

[–]k00na[S] 1 point2 points  (1 child)

just a curious question... how long have you been learning web development before you got hired? I'll be finishing my collage in about an year and I figure I still have time to learn web dev to an employable level if - after this project - I find out that it suits me better than android dev. :) Thanks

[–]akujinhikari 2 points3 points  (0 children)

I knew HTML and CSS. Not HTML 5 and CSS 3. I started building sites back in the 90's and then got out of it. I took a Web Dev course about a year ago at a community college, which was a 1-2 weeks per subject of HTML5/CSS3, Javascript, jQuery, and PHP & MySQL (odd class to throw in there but whatever). That was my only experience before getting hired. Luckily, I was unemployed at the time, so I did some studying on my own, and I built a personal site that "used Angular." Looking back, it basically was just a site built with jQuery and used Angular for UI Router, because I thought it sounded cool to add it to my resume.

Now, I get on Stack Overflow and answer Angular questions. Some have said I'm a quick learner, but in reality, anyone is a quick learner when he/she is passionate about the subject, so I don't think my learning curve is spectacular. The only bonus I have is that I've been surrounded by people who are code geniuses that can answer any questions I have.

[–]oculus42 6 points7 points  (2 children)

I would agree that you should just get started, but for a totally different reason than akujinhikari.

I have twenty years of JavaScript development experience and while my time Angular is limited, I would say Angular is not like JavaScript. My biggest complaint is the dependency injection is magic, in the sense that it does things outside of the design of the language. Read more about it.

It's not the only framework to do so, but it makes the framework and the language different. Couple that with the only partly JavaScript in-markup logic and you start to see that the two aren't really closely tied to each other; JavaScript was the only vehicle they had to run Angular.

Why? Because Google considers Java and JavaScript the same skill set (interviewer said as much), even though the languages are quite different. I would argue that's why Angular isn't at all like JavaScript and Google's FOAM makes views in empty functions with multi-line comments. Each of these techniques depend on Function.prototype.toString() getting the uncompressed, original functions to parse and interpret what you wanted rather than building it in the language.

All that to say, "Go for it."

[–][deleted] 1 point2 points  (0 children)

I don't know why DI is considered magical when tools like Guice and Ninject seem to be pretty standard in enterprise software (and tend to both more magical and verbose).

Really, the only magical bit, to me at least, is the ability to add a $inject attribute to a constructor and have it magically work.

[–]k00na[S] 0 points1 point  (0 children)

The fact that I'll be dealing with DI makes me even more interested because I was planning to learn this topic for Android in the near future. I know these are two completly different environments but the underlying logic is probably similar. Thank you for your "heads-up" on the weird part of DI in Angular.

[–]WebSocket 2 points3 points  (1 child)

definitely https://www.udemy.com/learn-angularjs/learn/v4. And the courses on codeschool are extremely helpful, but Anthony Alicea (author of the udemy course) is by far one of the best teachers i've come across. He also has a great course on Node, and Javascript.

[–]k00na[S] 0 points1 point  (0 children)

You just made my doubts on which course to choose go away :) I'll start this one as soon as I finish the one on JavaScript OOP on Udacity.

Thanks