Tuesday, August 5, 2014

Advanced AngularJS Class in Los Angeles

On Saturday, September 13th, I will be teaching an advanced AngularJS class at the ITT Technical Institute in Torrance California. Thanks to some corporate sponsors, we are able to charge only $79 for seven hours of instructions. 

In a similar vein to the beginning AngularJS class, you will learn by writing code, not by looking at slides. We will dive deep into some of the more advanced topics in AngularJS. We will write custom filters, go super deep into the heart of AngularJS: directives including understanding the difference between the compile and link phases. 

Promises are the most useful things introduced to JavaScript recently. We learn how to use them in AngularJS and why they make for cleaner, more maintainable code. 

Since the goal is always to build working software, we will also become intimate with ways of testing our apps. We will use Jasmine unit test to check our code's correctness and Karma to check our app. 

If you don't know AngularJS, this is not the class for you. We are assuming that everyone in the class knows the basics of ng development. Hint: the ng is a test, if you aren't hip to it, take a beginner's class. There is a newbie class on August 16th.

This will be a code packed day of AngularJS learning fun. Hope to see you there!

Beginning AngularJS Pre-class Notes

It is my sincerest desire to make the Beginning AngularJS class an epic hands-on training experience. In order to squeeze everything into an eight hour class we will need to hit the ground running. Please feel free to contact me via the Meetup page for public questions or by email if you would like to ask something confidentially (rockncoder@gmail.com).

You are welcome to use any editor you desire but please be sure that you are comfortable using it for web application development. I will be using JetBrains' WebStorm as his IDE. WebStorm is available for Windows, Mac OS X, and Linux. WebStorm is a commercial product, a personal edition cost $49, but there is a 30 day trial version available for free.

In order to do web development on your personal machine you will need a web server. Many browsers, including Chrome, will not allow websites launched from a file to access other files. This is a security precaution to stop hackers from steal your files. If you are using WebStorm, it includes a web server. If you are using some other IDE, see if it includes a web server. As an option you can or take a look at Mongoose. Its free edition runs on Windows, Mac OS X, and Linux. I will not cover installing it in class, but in an upcoming blog post I will list the installation for Mac OS X and Windows.

We will also be using Node.js, not as a web backend, but as a cross-platform command line tool. Many frameworks and tools like Grunt, PhoneGap, and AngularJS, write their command line utilities in JavaScript and deploy them as Node Package Modules (NPM). Node.js is available for free, for Windows, Mac OS X, and Linux.

We will be using Firebase as both a database and as a hosting service. Things will go much faster the day of the class if you sign up for an account beforehand. There is no charge for a developer account. The one caveat is that you can't choose the URL for your website. It will be chosen for you. Your site will be publicly visible, so you will be able to share it with anyone you send the URL.

The night before the class I will make the source code for the app available on my GitHub account. You won't need to sign up to download the code but you may want to get familiar with GitHub before hand. I have lots of code samples in JavaScript on GitHub if you are curious.

If you would like to follow along step by step, you will want to have Git on your machine. Having Git installed will make it easy to follow along with the sample app development and guarantee that you are starting from the same point as the instructor at the beginning of each lesson. Git is available for free, for pretty much every computer system known to mankind.


Monday, August 4, 2014

Beginning AngularJS Class in Los Angeles

On Saturday, August 16th, I will be teaching a Beginning AngularJS class at the ITT Technical Institute in Torrance California. Thanks to some corporate sponsors, we are able to charge only $89 for a full day class. 

What is AngularJS? It is an amazing client side MVC framework, sponsored by Google, which makes web apps easier to develop and test. Unlike other frameworks, AngularJS adds to what you already know about web development. 

This class is not for newbie developers. It is designed for developers who know how to code and would like to enhance their skill-set with AngularJS knowledge. We will not spend anytime talking about how to write web apps, JavaScript, HTML or CSS. Instead we start by learning AngularJS.

I would like to give a special invite to all of the jQuery developers out there. Tired of watching your code turn into to spaghetti? Well, AngularJS works well with jQuery. It is easy to turn jQuery UI widgets into predictable and well-behaved AngularJS directives.

As an added bonus, we will also deploy our apps using Firebase Hosting. While Firebase isn't needed for AngularJS development, it provides free hosting for developers, plus when AngularJS is combined with their AngularFire, you get three way binding with your Firebase backend data. 

Worried you might not be able to run the exercises on your machine? Check out the pre-class notes. I list all of the apps and websites we will be using.

If this class seems too easy for you, please consider signing up for our advance class: AngularJS Deep Dive.

There is still time to sign up, but hurry this is a bargain price for what is going to be an epic day of development. 

Debugging and Tuning Mobile Web Sites with Modern Web Browsers

Let's face it, debugging mobile web sites is not fun. Hopefully these slides from my talk at Velocity in Santa Clara in June may help. Ignore the first slide, it was for attendees of the talk.


Ten Groovy Little JavaScript Tips

I gave this talk back in 2013 and it is still good information today. The best part is that the tips are quick to learn and easy to remember. 

Be sure to check out my in-depth and affordable JavaScript Workshop coming this May to Southern California. I am partnering-up with the South Bay Mobile User Group and PeopleSpace for this course. I challenge anyone to find deeper JavaScript training for less. Hurry before it fills up.