TypeScript


Start Learning TypeScript with these Short Videos

TypeScript continues to grow in popularity and for good reason. It adds “guard rails” to your code to help you spot issues early on, easily locate problem code, enhance productivity, provide consistency across code, and much more. While there are a lot of TypeScript resources out there to get started learning the language, where can you go to get started quickly without wasting a lot of time? I recently published a series of short videos on TypeScript core concepts that can provide a great starting point. The videos are short, super focused, and many of them use the online TypeScript […]


Using the Kubernetes JavaScript Client Library

I’ve been working with Kubernetes a lot and focusing on various deployment techniques that can be used (such as Blue-Green Deployments) for a Pluralsight course I’m creating called Kubernetes for Developers: Deploying Your Code. If you’re new to Blue-Green Deployments, here’s a quick overview: While I was working on the course, Dr. Christian Geuer-Pollmann and I had chatted on Twitter about a Blue-Green dashboard he wrote. He did a great job on it! I’ve been wanting to experiment with the JavaScript Kubernetes Client library so I decided to see what could be done to create a simple Blue-Green Deployment “dashboard” […]


New Pluralsight Course: Creating Object-oriented TypeScript Code

I’m excited to announce the release of another course on Pluralsight titled Creating Object-oriented TypeScript Code! If you’ve been wanting to learn more about ES2015 features as well as object-oriented features available in TypeScript then this this is the class for you! Here are a few questions this course will help you answer: What techniques can be used to create objects in JavaScript and TypeScript? What is object-oriented programming? Can I work with classes? What are constructors? What are get/set properties? How do I define functions in classes? Is a static member the same as an instance member? Can classes […]


Observable Store 2.0 Released on npm!

I’m excited to announce the release of Observable Store 2.0 on npm! You can get started using it with the standard npm install command: The Github repository provides information about the specific steps to get started and how Observable Store can be used with various front-end projects. Why Observable Store? Before jumping in to what’s new in 2.0, let me give a quick overview of the Observable Store project in case you’re new to it. Several years ago I was working with a few large companies here in the United States who were building Angular and React apps. One in […]


RxJS Error: “Types of property ‘source’ are incompatible” and How to Fix It

I’m working on an npm package that requires RxJS as a peerDependency which means that whatever app uses the package must also install RxJS. Since my npm package project needs RxJS to build, I add it as a devDependency which of course adds it into the node_modules folder of the project. To use my npm package locally in sample apps I have I do the following which is a nice trick to avoid having to publish the package to npm (which I don’t want to do when I’m still working on it): Run npm link [package-name] where package-name is name […]


Debugging jasmine-ts Unit Tests in VS Code

I’m currently working on a project that relies on jasmine-ts to run unit tests. While it’s been working great, I encountered a bug in a unit test that required a lot more than a simple console.log() statement to figure out. I needed real debugging! Since my unit tests were running and providing output directly to the console, the question became, “How do you attach to a jasmine-ts unit test in VS Code?”. I found a few StackOverflow posts and finally went with something mentioned here (shout-out to isaacfi for providing the answer that actually worked). To debug a jasmine-ts unit […]


Data-Oriented vs. Control-Oriented Programming

I recently had someone ask me a question on Twitter about moving to Single Page Application frameworks and why they’d do that over choosing vanilla JavaScript or jQuery. It’s a great question but tough to question on Twitter with the limited amount of characters. So, I thought I’d dust off an old post I wrote many years ago to address the subject. I also wrote a post titled Choosing the “Right” JavaScript Library/Framework for Your Application that has some additional ideas to consider as well. Any type of front-end app can be built using vanilla JavaScript, jQuery, or a Single […]


Using the Iterator Pattern in JavaScript

I recently had to parse some markdown using the marked npm package and convert it into JSON objects for a project I’m working on. When I parsed the markdown I’d get back an array of tokens that would look something like the following: I started out the “normal” way by doing a for…of loop to iterate through the tokens in the array. This worked, but tracking the start and end of a token meant adding extra variables which ultimately complicated the code. For example, how do you know if you’re in a list? You track it with an inList variable […]


Simplifying Front-End State Management with Observable Store

I admit it – I think the use of some front-end JavaScript state management patterns has gotten out of control. When you’re spending a significant amount of time writing code (and often a lot of it) to handle application state or relying on a scaffolding tool that generates 100s or even 1000s of lines of code then it’s time to take a step back and ask, “Do I really need all of this?”. While you’re at it you might also ask, “What can I do to simplify my code and bring some sanity back to it?”. Rather than ranting about […]


New Pluralsight Course: Angular Architecture and Best Practices

I’m excited to announce the release of my next course on Pluralsight titled Angular Architecture and Best Practices! The goal of this course is to provide you with solid, proven guidance to plan out your Angular application architecture, address various challenges that typically come up, and ultimately create a more maintainable and flexible application. Here are a few questions this course will help you answer: Is there one “right” way to architect and build an Angular application? Short answer – NO! What are some key concepts I should consider when planning my application architecture? Is there any type of planning […]