Javascript pre-increment vs post-increment vs increment-equal

Test on:
Node v.14.17.3

Pre-increment – increment then read the variable, example:
++j

Post-increment – read the variable then increment, example:
k++

Increment-equal – increment then read the variable, example:
l+=1

Test code:

console.log('--- j');
let j = 1;
console.log(++j);
console.log(j);

console.log('--- k');
let k = 1;
console.log(k++);
console.log(k);

console.log('--- l');
let l = 1;
console.log(l+=1);
console.log(l);

Test result:


This Week Reads

What’s the Difference Between Width/Height in CSS and Width/Height HTML attributes?

I save you time if you prefer not to read this one. Presentational attributes (HTML attributes) have weaker (or lesser priority) compare to CSS attribute of the same function.


23 lesser known VS Code Shortcuts as GIF

You probably have seen a lot of similar posts, but this explains the shortcut in animated GIF, which is easier to understand!


ES6 vs ES2015 – What to call a JavaScript version?

Confuse with JavaScript version? You’re not alone. This will explain the difference between ES6 and ES2015. Hint: they are the same.


Get Hired: A New Series

This is a series of posts about getting hired, how to prep resume and go to interview. If you are looking for a job, it’s worth the time to invest in the preparation.


How to avoid infinite nesting callbacks

Ever seen (or written) JavaScript function with bunch of nested callbacks? The new `async` `await` will help you avoid that.


Another Reading List

Cross Tab Communication with Javascript

This post lays out an interesting problem, how can Javascript communicates across browser tab (or iframe or window)? There are few different approaches with pro and cons of each.


Use read-only replicas to load-balance read-only query workloads

With new vCore pricing model, Azure offers SQL solution with better features. One of those is no-cost, built-in read-only scale out database. Read more on the details here.


Overview of Microsoft Authentication Library (MSAL)

MSAL is the new library to authenticate with Microsoft Identity Platform (or what it used to be Azure AD endpoint). It’s replacing ADAL (which only used to authenticate to Azure AD endpoint – v1). The new version support authentication beyond Azure AD which includes personal account (hotmail.com / outlook.com) and social accounts like Facebook / Twitter, etc.  For more details on Microsoft Identity Platform: https://docs.microsoft.com/en-us/azure/active-directory/develop/about-microsoft-identity-platform


Authentication flows

There are many authentication flows in the world of authentication. This Microsoft documentation gives overview of each auth flow and how it’s being used. Primarily for Microsoft Identity Platform, but generally applicable to other platform / framework as well.  The more details coverage of each auth flow can also be found here: https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-implicit-grant-flow


Google Spent 2 Years Studying 180 Teams. The Most Successful Ones Shared These 5 Traits

Great achievement can sometime be done by one person. But most of the time, it’s a team. This post talks about Google research into what makes the most successful one. It’s along the same line of previous studies around motivation, more psychological than anything else.


Christmas Reading List

What is Zone.js?

Zone.js itself is independent of Angular. However, when developing in Angular, it’s important to know a thing or two about Zone. Zone is in the heart of Angular framework. This old video explains how it works.


What Makes a Great Remote Team

This isn’t a typical technical post, but somewhat related. Google has spent 2 years researching what makes a great remote team. This is the result. Worth the read if you are in remote culture.


Let’s Get Graphic: A Few Ways To Draw On The Web

There are many library out there to draw on the web. This post goes over few of them and the pro / cons. You may even learn a new library you didn’t know before.


The Buzz around InnerSource

The concept of innersource is to use lesson learned from open source and apply it internally within the company. This post is high level overview that includes links to other resources for more details. If you want more, here’s the more details explanation: https://resources.github.com/whitepapers/introduction-to-innersource/


Leveraging Cognitive Services to simplify inventory tracking

See how intern students solve inventory tracking problem with Azure Cognitive Services. I thought their solution is really good, it includes having online and offline mode when classifying the product.


More Reading List

100 new requests in Node.js while still serving the first one

This is an interesting look into how Node.js works under the hood when serving multiple requests. It’s different than how Apache, Tomcat or IIS serve the request from users. Pretty interesting.


Promises and async/await relationship

I always wonder how they actually relate to each other. This short post explains it concisely. They are also interchangeable.


Best Practices for REST API Error Handling

I’d categorize this more of “basic” practices. However, just because it’s basic, doesn’t mean you can ignore them. In fact, they are very important in building APIs.


How to handle exceptions in asynchronous code in C#

The main (and probably the only) takeaway from this post is that exception thrown in an `async` method that returns a `Task` object is wrapped in an instance of `AggregateExpcetion` which you would have to access with `tasks.Exception` instance. Check out the code example in the post.


Reduce Change Detection Cycles with Event Coalescing in Angular

Event bubbling in Angular app can be problematic when it triggers change detection. This post shows you how to coalesce them.


More Reading List

Microsoft open sources SandDance, a visual data exploration tool

Microsoft demo-ed this visualization tool few years ago, it’s amazing tool to display your data beautifully. And it’s now open source!


Announcing TypeScript 3.7 RC

A lil bit older article, but describe new features in TypeScript 3.7 and reason behind its invention. Some of them are optional chaining, nullish coalescing, assertion functions. Head out to the page for full list and explanation.


13 Tech Experts Predict The Next Big Trend In Software Development

Whether you believe it or not, it’s a good-to-know reading. You can agree or disagree. Technical read, but not a heavy one for sure.


Top data visualization examples and dashboard designs

There are many way many way to display data and there’s no right or wrong way. There are, however, more effective way to display data depends on your app / needs. This post gives you some ideas on a good data visualization design.


13 useful JavaScript array tips and tricks you should know

Handy tricks in JavaScript. If you code in JS a lot, remember this on top of your head will definitely make you look like a ninja coder.


Monday Reading List

Blazor Server in .NET Core 3.0 scenarios and performance

Have heard about Blazor? If not, definitely check this post out. For those who already use Blazor, you can skip. Unless you also want to understand the inner working of Blazor.


Everything you need to know about resource tagging in Azure

Azure has feature to tag your resources for some times now. But, how do you use it the right way? This post will explain.


Javascript – Does taking a callback make a function asynchronous?

Interesting question and could be one of those questions as well. The answer is: it depends. Do read more to understand the details.


The Mediator Pattern In .NET Core – Part 1 – What’s A Mediator?

I came across Mediator pattern and has since been intrigue by it. This post will explain what’s it and why do you need it.


How C# 8 Helps Software Quality

The essence of writing codes is not _just_ for computer to interpret and run it. Equally, if not more, importantly is for human to understand and maintain it. C# 8 features will help to do just this by increasing the quality.


List to Read

The emerging big data architectural pattern

An Azure post about big data architecture. If you are about to start one, this is a good introduction. It mainly focuses on Lambda architect (batch and speed layers) using Azure resources.


Roadmap for learning the JavaScript language

Do you just start learning JavaScript? Are you planning to master JavaScript? This post is for you. Learn JavaScript from the early version and how it evolve to current version.


Choosing the right frontend database for a single page application

And if you are now serious about PWA, check this article out on what’s the ‘right’ frontend database for your app. Very useful especially when you are starting a new project.


Turn your Angular App into a PWA in 4 Easy Steps

Now you know what’s PWA, you can turn your existing Angular app into a PWA. Looks pretty straigh-forward honestly. But the devil is always in the details, right?


Progressive Web Apps & Electron

You can’t talk about PWA without Electron app. But, what’s the difference? Well, check this post out to find the answer. In short, they are like siblings, similar but different.


Saturday Reading List

CSS Can Do This… And It’s Terrifying!

I never thought CSS could be used to this, it’s amazing actually. From keylogger to turing, it’s all done using CSS (and in some cases, JavaScript).


Swiftly understand what versions of .NET are supported on Azure App Service

Want to know what version of .NET is supported in your Azure App Service? Check this tips out. And while you there, check out hundreds of other tips as well.


Demystifying containers, Docker, and Kubernetes

Getting started on Kubernetes? This is a must-read, cover the basic building block of Kubernetes. No code involves, just the knowledge you need to understand Kubernetes.


Azure and .NET Code Samples

You need to bookmark this link right now if you are building application using Azure, .NET, Microsoft Graph or Power Platform, especially if you don’t know how to start building application for your project. There are many available code samples for all kind of applications.


Should I use === or == equality comparison operator in JavaScript?

Ahh.. the JavaScript tricky question. There’s actually a difference between `===` and `==` and why you should use one in some cases and not the other.


Start-of-Week Reading List

Mockadillo

The rise of microservices requires more manageable APIs, including testing them. Mockadillo is a new tool built for this exact purpose.


Series: How YOU can build a Serverless GraphQL API leveraging microservices

I think this is more like a reference-type article. The topic is so broad and rather complex, but only short read. However, it does have links to more details implementation of GraphQL and anything you need to build a serverless GraphQL microservices API.


First World Problems: Very long RMarkdown documents

If you use RMarkdown, this tricks teach you how to manage a very long RMarkdown document. If you haven’t use (or heard) about RMarkdown and you’re doing data visualization and big data stuff, definitely check it out.


How I (Accidentally) Made a Game Engine from Scratch with Vanilla JS

A great way to start learning about game programming. This covers basic game programming and written in pure JavaScript.


Getting started with Azure App Configuration

The journey of centralized configuration is never ending. Azure App Configuration is another attempt at this, seems very promising however. Today’s configuration is not just in an application, it’s everywhere, the VM, the CI/CD pipeline, etc, and it spans across different cloud provider. Azure App Configuration is built to handle this.