## Blog Posts

### Handle Polymorphic Array Serialization With Marshmallow

Sep 18th, 2020

Few months ago we looked into Marshmallow, a Python serialisation and validation framework which can be used to translate Flask request data to SQLAlchemy model and vice versa. In today’s post we will look at how we can serialise an array containing polymorphic data.

### Postgres Window Function

Sep 11th, 2020

Window functions are calcultions done accross a set of rows in relation to the current row. In Postgres, we can use window functions with the keywords OVER to calculate useful aggregate functions like average, ranking or count over a partition of the data. In today’s post we will look at example of window function usage.

### Ngrx Metareducer

Sep 4th, 2020

When building Angular application with Ngrx, it is helpful to see the action flowing into our states for debugging. The quick and easy way to debug is to make use of the Redux DevTools which shows the list of actions and provide time travelling functionalities. Another way is to simply log the action, the state prior applying the action, and the resulting state. In Ngrx, we are able to do that using a Meta-reducer.

### Postgres Full Text Search

Aug 28th, 2020

In today’s post we will look at how PostgreSQL Full Text Search functionalities can be used to retrieved ranked documents. We’ll start by looking at the basics of matching documents, then we’ll move on to how we can define indexes for performance improvement and we’ll end by looking at weights and ranking.

### Debugging Angular App With Chrome Devtools

Aug 21st, 2020

When developing Angular application, or any sort of frontend application, we ensure that the application works properly by displaying it on the browser. Chrome comes with built-in devtools enhancing greatly our debugging toolkit. In today’s post we will look at the source panel of the devtools and discover the most important functionalities.

### Getting Started With Sqlalchemy Orm

Aug 14th, 2020

In a previous post, we talked about Alembic which is a migration tool built on top of SQLAlchemy. SQLAlchemy is a Python SQL toolkit and Object Relational Mapper (ORM). In today’s post, we will look at how the ORM part can be leverage to easily create and manage a simple database schema.

### Using Vscode Task To Detect Compilation Errors In Angular

Aug 7th, 2020

Working with Angular is Visual Studio Code (VSCode) is extremely easy. One feature which allowed me to quickly debug and find errors is the task feature combined with the Angular CLI. In today’s post, we will see how we can setup a task that uses the Angular CLI to highlight compilation problems in the application.

### Understand Exportas In Angular Directive

Jul 31st, 2020

A few weeks ago we looked into ViewChild and ContentChild. We saw how template variable could be used to get references on the element they were defined on. In today’s post we will see how exportAs facilitates the creation of template variables.

### Python Interactive With Vscode

Jul 24th, 2020

In a previous post we talked about Jupyter notebook. We looked at the support of notebooks from Visual Studio Code and how we could write a notebook almost like a story with interactive code. Continuing on the same line, in today’s post we will be looking at Visual Code Python Interactive and see how it can be used to write Python scripts or quickly test prototypes.

### Jupyter Notebooks With Visual Studio Code

Jul 17th, 2020

Few months ago we talked about IPython, a powerful interactive shell to discover modules, test functionalities and applications. On top of that, IPython is also used as a Python kernel for Jupyter. Jupyter allows us to combine Markdown text with executable Python code in a notebook, called a Jupyter notebook. Visual Studio Code has a direct support for Jupyter notebooks which have the extension.ipynb (for IPython notebook). In today’s post we will see how we can create our first notebook and experience the benefit of this technology.

### Version Angular Application

Jul 10th, 2020

In frontend application, it is common to have the version displayed on the footer which allows us to quickly debug which version is getting served by our server. In today’s post, we’ll look at how we can get the version baked into the bundle so that it can be used and displayed on the frontend of an Angular application.

### Contentchild Decorator Angular

Jul 3rd, 2020

Continuing on our discovery of Angular decorators, in this week post we will be looking at ContentChild and ContentChildren. What the differences are, and when to use one or another.

### Viewchild Decorator Angular

Jun 26th, 2020

Last week we looked into HostBinding and HostListener decorators and how they could be used. In this week post we continue on our discovery of great decorators by looking at ViewChild and ViewChildren. What the differences are, and when to use one or another.

### Multi Inheritance In Object Oriented Programming

Jun 19th, 2020

Multi inheritance (MI) in Python is commonly used for mixins, where functionalities are defined in mixin classes and can be used as base classes. When those classes override the same functions, the program experiences what is known as the Diamond Problem. In order to call the proper functions, the compiler employs a Method Resolution Order (MRO) mechanism. In today’s post, we’ll look at the Diamond Problem, the MRO mechanism used by Python and we’ll also quickly look at why C# doesn’t have multi inheritance.

### Hostbinding And Hostlistener Angular

Jun 12th, 2020

When creating directives, we sometime face situation where we need to change properties from the element or component hosting the directive. Those can changes can be made using HostBindsing decorator. In today’s post we will look at how we can use HostBinding and HostListener to change properties of the host element.

Designed, built and maintained by Kimserey Lam.