Photo by Brett Jordan on Unsplash

It’s a common scenario to transfer data between 2 applications on a regular basis, e.g sending Purchase Order data from a web application to another. This article introduces a few common ways of data transfer between 2 web applications.

If the data is small and immediate response is required, the easiest way is using a API.

For example, sending a purchase order data from the web application to an accounting application. The accounting application exposes a REST API to accept purchase order. The purchase order data can be base64 encoded(safe inclusion in payload) and added to the POST payload with…

Photo by Dose Juice on Unsplash

Celery is a great and simple Task Queueing system for Python. It allows you to offload heavy tasks to another server and run it asynchronously. It can also run periodic tasks too. It’s also surprisingly easy to setup with AWS Simple Queue Service(if your app is hosted with AWS).

I have been looking for a task queueing system for primarily 2 scenarios

  1. Upload files to AWS S3 in the background, without affecting frontend user experience. The upload task could take seconds, and there could be high demand in frontend. …

I have been a PHP developer(and fan) for a decade. It formed my perspective on what a programming language should be. Now I’m joining the Python camp and here are my reasons.

Photo by Hitesh Choudhary on Unsplash

Neat Code

How many times do you have to rub your eyes and look closer to match the ending brackets of statements?

I did it everyday when coding with PHP. Before a proper IDE came into play, I literally placed a ruler on monitor screen to vertically line up brackets!

Here is an example of statements in PHP

function hello($arg)   {
if ($arg) {
if ($arg…

If you ever googled how to recursively find records with Postgres SQL, for example, traversing a tree stored in a table, you will find ALL suggestions point you to Postgres Recursive Query with Common Table Expressions (CTE).

The mentality around this, as a Stack Overflow thread suggests, is “You don’t need a function at all, this can be done with a single SQL statement”. It is true in most cases, but is Recursive Function so bad? This article compares both approaches in terms of performance, complexity, limitation etc. In one use case, Recursive Function actually performs much better than CTE…

AWS CloudFront is a CDN
AWS CloudFront is a CDN

AWS CloudFront is a CDN web service to distribute your static content via its edge locations to speed up the content delivery. Many companies have a requirement to deliver a mix of private and public content from their S3 bucket, however I find AWS guide isn’t very clear on that. I’m writing this article to share a few tips I've learned.

AWS secures private content by either Signed URL or Signed Cookie. This article will focus on the Signed URL as it’s more versatile. Signed Cookie is very similar to Signed URL anyway.

Before diving into technical details, let’s be…

Edison Wang

Software engineer | Martial Arts learner | Connect me

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store