---
title: Preface
nav_position: before
---

> Always code as if the person who ends up maintaining your code is a violent psychopath who knows where you live.^[Quote from [Coding For Violent Psychopaths](http://blog.codinghorror.com/coding-for-violent-psychopaths/)]

The quality of software is directly affected by its codebase. Because most projects are developed over mutiple years and many different people maintain the software during its lifecycle, having a consitent coding convention is essential.

If everyone adheres to the same coding style, it will be much easier to read and understand the existing code base. Familiarity with the code, even code that another developer has written, will save a lot of time and frustration that would otherwhise be spent figuring out the structure and charactersiscs of the code.

Having a consistent style in coding will enable developers to work together more effectively. Unfamiliar patterns will jump out of the code when you look at it. Even if unfamiliar patterns aren't alawys error, they definitely need a close look to make sure nothing is missed.^[[Why Coding Style Matters](http://www.smashingmagazine.com/2012/10/why-coding-style-matters/), Smashing Magazine]

The following pages are an super small introduction into TypeScript and a collection of good practices when working with Angular. I didn't invent these method and I hope that I referenced everyone who initially thought of it. But I wanted a place where all my findings aggregated and nicley structured.

I hope you find it helpful! If you find any flaws or inaccuracy please let me know by [creating an issue](https://github.com/sebald/guidelines/issues)!