Data deduplication is a technique to solve the common problem in distributed software architecture whereas a specific data record is duplicated unintentionally in a distributed, non-locking table like DynamoDB.

The stateless function as a service is the greatest architecture toward the future of the software development industry. Well-architectured it right is not always easy. You may have trouble at any time when applying to real-world business. But don’t rush to be dive into your problem, finding a smart, simplest solution giving you a greater award for your mind.

What is data duplication?

“Create an Order” is a famous simulation of a data duplication issue…


In Design Thinking, testing your solution by giving it to real users is the only way to evaluate your idea. If your system doesn’t support the ability to serve different users with different content, your system is not A/B Testing readiness.

From Wikipedia — “A/B testing is a way to compare two versions of a single variable, typically by testing a subject’s response to variant A against variant B, and determining which of the two variants is more effective.”

In a Startup, you are running an e-commerce website that offers clothes for women. After the first sales year, your system has recorded numbers saying customers likely to visit than paying through your platform. Given the purpose of this screen will lead two user groups A and B, who has a similar audience characteristic, to “pay” for your product:

Figure — 1. A/B test payment method on the same audience characteristics.

Which one has…


Random Generator Number is the core component to generate the primary number in OpenSSL. Understanding how does it work in a real-life implementation is very important for the security aspect.

In computer security, crypto libraries are widely used from basic levels such as password protection algorithms to secured or encrypted communication channels or data encryption methods. Understanding the weakness of algorithms is important to choose the right crypto configuration when developing software or building a networking system. In asymmetric cryptography, also known as public-key cryptography, uses public and private keys to encrypt and decrypt data. The keys are simply large numbers that have been paired together but are not identical (asymmetric). …


A problem will change the characteristics when eliminating them, it happens with the causal effect. The more precise characteristics you define, the less impact on the derived problem. Therefore understanding a wicked problem is important to reduce the causal effect.

According to Horst Rittel (1930–1990), a design theorist and university professor first coined the term “wicked problem” in ‘Dilemmas in a General Theory of Planning’ (1973). In the paper, Rittel details ten characteristics that describe a wicked problem. This is the 10 Characteristics of Wicked Problems defined in that paper:

  1. There is no definitive formula for a wicked problem.
  2. Wicked problems have no stopping rule, as there’s no way to know your solution is final.
  3. Solutions to wicked problems are not true-or-false, they can only be good-or-bad.
  4. There is no immediate test of a solution to a wicked problem.
  5. Every…


Mastering a programming language could take you over the years since you started one. After you are good at one, the next one will be easier than then the other next one. Hence, choosing your first programming language is important to shape your career path in software development.

I dived into software programming world since 1998 at my university with Pascal programming language with Turbo Pascal compiler in MS-DOS computer. Started with solving maths problems, advancing for graphical drawing with curves, shapes, and animation in 2D. It’s just for enjoying!

After 22 years of doing programming, I had tried over…


Scalability and elasticity are one of five essential properties in Cloud Computing technology. According to The National Institute of Standards and Technology (NIST) defines cloud computing as it is known today through five particular characteristics: On-demand self-service, broad network access, multi-tenancy and resource pooling, rapid elasticity and scalability, measured service.

What is Scalability?

is the capacity of an object to be changed in size or capability. A system is scalable if its resource is sizable or it can be stretch out by adding more elements to increase the total capacity.

Figure — 1. The two-dimension of Scalability.

In Cloud Computing, everything is a virtualized resource. A virtualized computing resource has…


In Data Science, a productive model is an amazing work from you. You want to sell your excellent model to a Financial Business or a potential StartUp through the API subscription method. AWS Lambda and API Gateway will be the best choice for you. Deploying your model into production and scale-out them for thousands of thousands of users is almost done if it works on Serverless architecture. Doesn’t like deploying on an EC2, it costs you nothing if there is no usage.

There are three popular frameworks using Python: SciKit-Learn, TensorFlow, and PyTorch. Today, TensorFlow is used widely for Deep Learning along with PyTorch while SciKit-learn is used for Machine Learning at most. In Mar 2019, Google has released a Tensorflow Lite version (TFLite). The lite version intends to use for Smart Phone and Embedded application. This is significant good news for Data Scientists.

It’s important to reduce the footprint of a Machine Learning or Neural Network model that runs in devices such as a Raspberry PI. When distributing it at client devices. It isn’t easy to protect your intellectual property from…


Have you ever asked yourself how a framework has been built to do a magic job for you? In this article, we will be together in 3 minutes to learn HOWTO to build a framework. This framework will deploy your function code into AWS Lambda or GCloud Functions service as you choose.

According to “Framework” definition, a Serverless Framework will be a supporting structure around which a Serverless can be built.

In software development, this is about how to construct a project using infrastructure or service that you don’t have to manage any Server to run your whole project code…


When working with AWS services, you’ve got several choices to build and deploy your lambda functions: Serverless Framework, AWS Amplify Framework, and AWS SAM CLI are the three most popular toolkit today. Each of them has different pros and cons. The cons you will get just happens after your project sized to be a complex solution beyond their pre-designed, intended purpose. In this article, I want to introduce yet another choice for your work with less locked-in, highly customization, and ultimate control of your Infrastructure as Code solution.

Figure — 1: A complex resource stack solution.

What is Simplify-SDK? This is a JavaScript SDK that helps your DevOp…


Lambda cold start is a huge problem in performance today if you are using a serverless architecture model. When we talk about the serverless architecture model, we are talking about this term in a general of use for software architecture design concept, whereas your whole software stack is deployed in many functions as a service. Typically, in AWS, we are talking about the Lambda function.

The AWS Lambda Startup Process.

In general, there are three main techniques to overcome this issue:

1. Function code and software stack optimization:

Using dynamically typed languages like Python, NodeJS, avoid using a huge preface’s programming language that depends on…

CuongQuay

(MSc) Cloud Security | Simplify Framework Creator | FinTech CTO | Technical Startup Booster (Consultant).

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