Introduction to TypeScript

June 6, 2018

While TypeScript is not limited to Angular, Angular has come to rely on TypeScript as its development language of choice over JavaScript. TypeScript is a superset of JavaScript, so those of you that are comfortable writing JavaScript will have all of its features available to you but you will have to change your way of thinking a little. For those of you coming from a .Net or Java world, TypeScript will feel much more familiar than JavaScript ever did.

This presentation will introduce key features that TypeScript adds to JavaScript like strong typing, classes, interfaces, and generics. We will also live code some small examples to exercise these features.

Meeting Announcement
Slide Deck

How to Secure an Angular Web Application

May 2, 2018

In this presentation, we will cover all the elements required to build a secure web application with Angular and Node.

We will discuss SSL/TLS, authentication, and authorization, cookies vs JSON Web Tokens (JWT) for session management, password hashing, salting and enforcing password policy. Finally, we will look at how this can be implemented in an example Angular/Node application.

Meeting Announcement
Slide Deck

Unit Testing In Angular

April 4, 2018

Unit Testing provides the foundation for solid application development. How do you know the code you wrote solves the problem the business asked you to solve? What about when functionality is complex? And how do you protect your code from subsequent changes? How do you know when you didn’t break anything in the process of adding new code?

Answer: automated testing

This is the first in a two-part presentation about testing Angular code. We discuss the fundamentals of unit testing and how it fits in with other types of testing. We will create unit tests for Angular services, components and forms with Jasmine and Karma. We will also use spies and demonstrate code coverage analysis.

This presentation will set the stage for a subsequent presentation when we will discuss integration and end-to-end testing with more advanced techniques.

Meeting Announcement
Slide Deck

Managing State In Angular with Redux

January 11, 2018

Passing state between child and parent components can be cumbersome in larger Angular projects. Using Redux in these projects can greatly simplify state management, but we have to get past the initial learning curve. In this presentation we will look at the pattern Redux follows, discuss Reducers, Action Creators and State. We will examine Redux’s use of the pub/sub pattern and reliance on immutability.

Meeting Announcement
Slide Deck

Angular Goodness

December 12, 2017

Please join me as we saunter through the land of Angular and build something from nothing. ( Yes I said saunter. Work with me, please.) We will visit with some of the symbiotic creatures like TypeScript, ES6, node, npm and Angular-CLI. We will take some Angular components and services out for some exercise. I want to share with you a sense of what a fun and joyous experience is it to build an Angular app.

This presentation is organized to give you a good sense of how quickly you can build an application from an idea with some nimble fingers. We won’t even have to come up with our own business idea. The internet is chock full of them. So let’s borrow from an already successful online auction website who will go nameless. We will also have a back-end server “read to go” handling all of our data service needs. In this presentation, we will focus on the happy path on the client-side. If it was easy to build an application, what would that look like? What would it feel like?

Meeting Announcement
Slide Deck

Introduction to Angular Forms

December 6, 2017

This presentation discusses the advantages and disadvantages of Template-Driven forms and Model-Driven forms. We will take a look at the code required to make both run and give you some guidelines to help you decide which to use. This presentation is aimed at developer just getting started with Angular.

Meeting Announcement
Slide Deck

RDBMS vs. Document DBs – How do I decide?

November 28, 2017

This presentation will recap the design considerations developers prioritize in picking one technology over the other. Using SQL Server and MongoDB as representative systems, we will consider the developer experience using these technologies. We will take a look at at the tools used to design, query, transform and optimize both relational and document database systems. Finally, we will take a brief look at Cosmos and the features it offers extending and simplifying the cognitive load a little bit more than Mongo.

This presentation is aimed at the developers who have been using either relational or document database technology and want to see what they were missing.

Meeting Announcement
Slide Deck

Awash with Tech: How to Keep Sane in an Ever-expanding World of Tech

November 28, 2017

This presentation starts with a brief overview of the growth of software development languages from the early 90’s until today.  Then we dig into five emerging trends, including Agile methodology, Document databases, DevOps, containers and the switch cloud-based application architectures.  We wrap up with some ideas on how to cope with the sheer magnitude of change in modern software development.

Slide Deck