Fork me on GitHub
Minko Gechev bio photo

Minko Gechev

1.61803399 == 42 //!!!

Twitter GitHub StackOverflow

Recent Posts

Implementing a Simple Compiler on 25 Lines of JavaScript

I already wrote a couple of essays related to the development of programming languages that I was extremely excited about! For instance, in “Static Code Analysis of Angular 2 and TypeScript Projects“[1] I explored the basics of the front end of the compiler...

Developing Statically Typed Programming Language

In this blog post we’ll go through a sample implementation of a type checker, interpreter and a transpiler for a basic purely functional programming language, which is based on the lambda calculus. We will do a “full-stack” programming language development ...

WebVR for a Gamified IDE

In the first part of this blog post I discuss the idea of using virtual reality for gamification of manual tasks in the software development process. I introduce a demo project which allows source code visualization and manipulation in a generated Minecraft...

7 Angular Tools That You Should Consider

In this article we’re going to quickly explore 7 Angular development tools which can make our everyday life easier. The purpose of the list is to not be opinionated architecture wise. This means that we’re not going to discuss tooling which has impact over ...

Announcing ngrev - Reverse Engineering Tool for Angular

Have you ever been hired to work on a huge legacy Angular project with thousands of NgModules, components, directives, pipes and services? Neither do I. Angular (2 and above) is still relatively new framework and there are not many enormous projects out the...

Implementing Angular's Dependency Injection in React. Understanding Element Injectors.

Recently I’ve been blogging mostly about Angular and it’s not by accident! Angular is an amazing framework, bringing a lot of innovation to the front-end technologies, with a great community behind it. In the same time, the projects that I’m working on have...

Distributing an Angular Library - The Brief Guide

In this post I’ll quickly explain the minimum you need to know in order to publish an Angular component to npm. By the end of the post you’ll know how your module can:

Angular in Production

In this informal essay I’ll go through a case study of my experience in using Angular (2 and above) in production.

Ahead-of-Time Compilation in Angular

Recently I added Ahead-of-Time (AoT) compilation support to angular-seed and got a lot of questions about the new feature. In order to answer most of them, we will start from the beginning by explaining the following topics:

2.5X Smaller Angular 2 Applications with Google Closure Compiler

In the post “Building an Angular 2 Application for Production” we explored how we can decrease the bundle size of a “Hello world!” application to from about 1.6M (non-minified & uncompressed) to 49K! We did this by using the following techniques:

Using Stripe with Angular

Stripe offer a set of APIs which allow businesses and individuals to easily accept and manage payments online. In a typical scenario you want your users to pay for a service that you’re offering using Stripe as a mediator.

Building an Angular Application for Production

Progressive Web Applications help us build native-like web apps, thanks to amazing tools such as Service Workers, IndexDB, App Shell etc. Once the browser downloads all the static assets required by our app, the active Service Worker can cache them locally.

Implementing the Missing "resolve" Feature of the Angular 2 Router

For the last a couple of months I’m working on an Angular 2 based PWA. The more complex the application gets, the more I appreciate that our choice was Angular! For routing we’re using the initial Angular 2 router that is now deprecated. For sure we will mi...

Scalable Single-Page Application Architecture

In order to have better understanding of the following blog post you should be familiar with the fundamentals of the object-oriented and functional programming. I also strongly encourage you to explore the redux pattern.

Managing ambient type definitions and dealing with the "Duplicate identifier" TypeScript error

Maintaining the angular-seed, I found out that the most common problem for developers using the project is:

Static Code Analysis of Angular 2 and TypeScript Projects

So far, most of the blog posts I’ve written are tutorials; they explain how we can use given technologies, architectures, algorithm etc. For instance:

Enforcing Best Practices with Static Code Analysis of Angular 2 Projects

About two weeks ago I published the initial draft of a Community-driven Angular 2 Style Guide. It was based on:

ViewChildren and ContentChildren in Angular

In this article I’m going to explain the difference between the concepts of view children and content children in Angular. We will take a look at how we can pass access these two different kinds of children from their parent component. Along the content we ...

Dynamically Configuring the Angular's Router

Warning: This version of the Angular 2 router is now deprecated! This means that soon the used below APIs will no longer be available.

Angular 2 Hot Loader

A couple of months ago I watched a few talks from ReactEurope. I was truly impressed by a few of them and especially by the one by Dan Abramov on redux and his hot loader. The tool he shown helps you do something similar to live-reload with one big differen...