Hi there! Welcome to my website, here you'll find all my blog posts, videos and personal projects.
Enjoy!

By Kimserey Lam with

Blog Posts

Looking for a specific post? Check out the Blog Index.

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.

Angular

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.

Python CSharp

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.

Angular

Inline Templates With Ngtemplateoutlet

Jun 5th, 2020

Angular has some nice directives hidden in the code that aren’t discussed in the guides. One of them is NgTemplateOutlet which allows us to create inline reusable templates. In today’s post we will look at how we can use NgTemplateOutlet to share functionalities in a HTML template.

Angular

Using Newman In Nodejs

May 29th, 2020

Few weeks ago we looked into automating Postman collection run using Newman CLI. On top of using the CLI directly, Newman can also be used in a NodeJS application which makes it very versatile to create tools for testing. Today we will look at how we can use Newman as a NPM library and see the options provided.

JavaScript postman

Vscode File Navigation Tips

May 22nd, 2020
File Filter

Visual Studio Code is a free open source code editor. It comes packed with features and can also be extended with many extensions built by the community. Since its first launch five years ago, it has become the main editor to work on frontend projects like Angular or React projects. Because it is so quick and easy to use, we can get started straight away and build without having to explore much of its functionalities. But there are gems inside that if known, enhance drastically the productivity. In today’s post I will go through some file tips with Visual Studio Code version 1.44.2 which will boost productivity.

JavaScript

Deep Dive Into Ngif Structural Directive

May 15th, 2020

Structural directives in Angular, like ngIf and ngFor are mysterious directives. They both come with custom notation in order to define the content of the directives for example *ngIf="abc else xyz" and *ngFor="let x of xs; let i=index; trackBy: trackBy. In today’s post we will demystify the notation of NgIf, called a microsyntax, by looking at how it can be used, and then reconstructing the directive ourselves.

Angular

Handlebars Built In Helpers

May 8th, 2020

Handlebars is a simple template engine which we can use to generate HTML content or other text format. Being very quick to use and understand makes it an ideal tool for projects needing the most common statements like conditions or loops. In today’s post we will look into Handlebars built in helpers with example.

JavaScript

Unicode Explained

May 1st, 2020

The step of translating text to binary format, called character encoding, is an important part of software development. Nowadays, we have some reminiscence of the ASCII code but majority of the systems default to UTF-8. In today’s post we will be looking at what the ASCII, Unicode and UTF-8 are.

Unicode

Event Sourcing With Equinox

Apr 22nd, 2020

One of the concept which gained a lot of traction from the last five years is Event Sourcing. Event Sourcing changes the way data are handled, how data are stored, and how perception of the current state is constructed. In this post, we will explain what is Event Sourcing and will see how it can implement using Equinox, a .NET implementation of an event store.

FSharp

Figma Constraints

Apr 17th, 2020
Constraints

Few weeks ago we looked into the auto layout feature of Figma to create flexible layout which adapt to new elements placed into them and allow to automatically arrange elements while maintaining padding and alignment. Another great feature of Figma used to handle placement of elements within a frame is to use constraints. Constraints in Figma come in multiple format, in today’s post we will explore each one of them and understand how they are used.

Figma

Figma Color Palette

Apr 10th, 2020
Color Palette

Last week we talked about Figma auto layout and how it allowed us to automatically place elements in a design. In today’s post, we will look at how we can define a color palette which can then be used throughout our design.

Figma

Figma Auto Layout

Apr 3rd, 2020
Auto Layout

Figma is a collaborative design tool that comes with a Free tier pricing for 3 projects and 2 editors. It comes with a full suite of features that allows us to create reusable designs and makes it easy to iterate on the designs. One of the features provided is the auto layout. In today’s post we will look into Figma auto layout feature and how it can be used to design components.

Figma

Kafkacat The Cli For Kafka

Mar 27th, 2020

Kafka is a widely used message broker platform. Althought very powerful, developping and testing applications that consume or produce Kafka messages can be really painful. In today’s post we will look at kafkacat, a command line tool that will make our life easier when interacting with Kafka.

Frontend Testing Fundamentals With Cypress

Mar 20th, 2020

Cypress is a end to end frontend testing tool which simulates user navigation while running in browser. Few weeks ago we discovered the fundamentals of it, how we could install it and how we could create custom commands for it. The trick with testing is to find the right balance between not enough tests and too many tests. Not enough tests would yield less confidence in code changes while too many tests will yield more maintainance hassle. Therefore what we really want is to focus on specific aspects of our application that if properly tested will ensure that the quality remains. Today we will look at three of the main pillars, the routes, the posts and the displays.

JavaScript
More Posts

Designed, built and maintained by Kimserey Lam.