Continuous Integration – Executive Summary

by 

|

|  

in ,

Continuous Integration (CI) is a strange concept from the perspective of an outsider. Some of our topics in software development make sense from the outside. Unit tests imply we are adding some value to our development process. Requirement gathering makes sense to almost anyone. But the concept of Continuous Integration seems a little bit like…

Read more…

Creating a Progressive Web Application with Angular

by 

|

|  

in ,

Progressive Web Applications (PWAs) are kind of the new hotness right now. Lots of chatter, but most probably can’t even spell PWA. 😉 PWAs are an attempt to create applications that live in the web browser and behave like real applications. Let’s take our Angular HTTP Call example and make it into a PWA. To…

Read more…

Quick Look – Angular Async / Await

by 

|

|  

in ,

These days, Async / Await is old hat for most C# developers. Using it in C# land makes async programming almost as readable as synchronous code. What is the difference between synchronous and asynchronous code? Quite frankly, you can read synchronous code and asynchronous code, but it is kind of a mess. With asynchronous code,…

Read more…

Top Posts of 2018 - Don't Panic Labs

Our Top Posts of 2018

by 

|

|  

in

As we near the end of another year, it’s time to look back at what our team has contributed to the Don’t Panic Labs blog. Usually, we just cover what was published on our blog, but 2018 saw the launch of Doug Durham’s own site and blog. In late September, he began a three-part series…

Read more…

Quick Look – Angular Service Swap

by 

|

|  

in ,

Dependency inversion is a common software engineering concept. It is the D in SOLID. With DI we are intentionally not programming against a particular implementation. Often this manifests itself by passing the implementation into a service through its constructor. This is called constructor injection. Angular uses constructor injection within its architecture. Services are injected into…

Read more…

Requirements – Executive Summary

by 

|

|  

in ,

Fingers on the keyboard is the fastest way to get a project off track. When writing software, jumping straight into code is almost always the wrong decision. Sometimes we architect-types think we need to start whiteboarding solutions. Starting there is also the wrong decision. What’s more important than either of those is requirements? We have…

Read more…

Angular Unit Testing

Quick Look – Angular Unit Testing

by 

|

|  

in ,

Unit testing is a valuable part of any development process. It isn’t as useful as many developers make it out to be; there are many things developers should be focused on more than unit tests. Code review is one such thing. But just because it isn’t the most important thing, doesn’t mean we shouldn’t be…

Read more…

Quick Look – Angular HTTP Calls

by 

|

|  

in ,

In my previous post, we focused on binding some data in the UI to data being returned from our ContactsService. In this post, we are going to make this a little more real and modify that service to call an ASP.NET Core backend. For starters, let’s write a quick ASP.NET Core backend that will handle…

Read more…

Spooky Software Failures

by 

|

|  

in ,

Software is pretty amazing. Without software, a lot of problems could never be solved. Without software, we couldn’t do a lot of things on massive scales. But software has its problems. As a whole, we as an industry don’t have a great track record of preventing these problems. One type of software we would all…

Read more…

Quick Look – Angular Data Binding

by 

|

|  

in ,

In my previous post, we took a quick look at Angular’s routing. In this post, we are taking a quick look at Angular’s data binding. One thing that’s pretty lame about our previous example is all the data is just backed into the page. With this blog post, we are going to pull static data…

Read more…