Category: Knowledge Base

  • Assign Google Analytics 4 Access Rights to Others

    Assign Google Analytics 4 Access Rights to Others

    About Google Analytics 4 (GA4)

    Google Analytics 4 (“GA4”) is a tracking and measurement tools provided by Google freely to the public. In this article, we will mainly focus on how to assign access rights to others who manage the GA4 on behalf of you.


    When to assign Access Rights to others

    Keep secret to the Root Access of the GA4 account

    Instead of sharing the Root Access to others, i.e. the login and password of the Gmail account which you used to registered for the GA4 account, you can instead only share different levels of Access Rights of GA4 account.

    Access Rights Permission Level does matter

    If you want to share the Read-Only Access Rights instead of Admin Access Rights which can configure anything inside the GA4 account, you should consider the permission level of the Access Rights

    Employment Turnover

    Whenever a staff is quit, if you don’t want to change all the passwords the he/she possessed for the GA4 account, you can in the beginning simply assign him/her different Permission level of Access Rights , instead of giving him/her the Root Access of the GA4 account.


    Prerequisite of Assigning GA4 Access Rights

    As a Assignor

    1. Ready for login of the Gmail account which is granted Administrative Access Rights of the GA4 account. This is not as easy as it seems because most of the time , due to the employee turnover, the organisation may have so many Gmail account that the current marketer have no ideas which Gmail account is used for logging in the GA4 account.
    2. Assignee Gmail Address
    3. Decide which GA4 Property to Assign
      • Usually you may have more than 1 GA4 Property which some are active while some is expired or no longer used. Please make sure that you assign the valid and active one.

    Step by Step on Assigning GA4 Access Rights to others

    As a Assignor

    1. analytics.google.com > <<ASSIGNOR_GMAIL_ADDRESS>>
    2. Admin  > Account > Account access management
    3.  > Add users
    4. Email Addresses = <<ASSIGNEE_GMAIL_ADDRESS>>
    5. Notify new users by email =
    6. Direct roles and data restrictions
    7. Standard roles = Administrator (Full control of account)1
    8. Add
    9. Done

    As a Assignee

    1. gmail.com
    2. Inbox
    3. from = [email protected]
    4. Email Title = You have been granted access to a Google Analytics account
    1. analytics.google.com
    2. Now you (Assignee) should be able to see the GA4 Properties assigned to you.

    1. For details description of the capabilities of the Access Rights Level, please visit https://support.google.com/analytics/answer/9305587 ↩︎
  • What is a Pivot Table

    Introduction

    Pivot Table is a feature which you can usually see in the Google Spreadsheet and Microsoft Excel. While alots of people can address it existence, seldom people can explain what it is and what it’s difference between the normal table. In this article, we are going to break it down and elaborate it in detail with illustration.


    Definition

    Pivot Table

    It is a good to start explaining what is Pivot Table by a normal Table.

    MonthSales Turnover (USD$)Salesperson
    Jan5,000Anna
    Feb2,000Anna
    Feb3,000Angela
    Mar1,000Ann
    Sales Turnover Normal (Salesperson , Month)

    You will not feel strange about the tabular data pattern which a normal table brings to you. In this Normal Sales Turnover Table, you can easily get 5 piece of information because there 5 records inside the table.

    The information, i.e. the 5 records, are in atomic level which means that they are already deintegrated into smallest granularity that if you further break down the record, say breaking down from information per Record to information per Cell, you no longer can get the useful information because it will be meaningless if you only know the value “Anna” without knowing what Month and how much Sales Turnover she get. In summary, a Record is the atomic level of a normal Table.

    This “Tree View” of a normal Table is good for recording due to the fact that each record can be input separately without affecting the meaning and usefulness of each other. For example, it is totally fine that there is missing information of March Sales Turnover from Joan if you are only interested in the February result of Anna.

    However, it is not good for “Forest View” when you want to see the consolidated result of the Sales Turnover Report. How about if you want to know the Total Sales Turnover Amount from Anna? Of course you can do the calculation by yourself each time you want to know the Total amount. But what if there are 10 million records?

    Besides, the normal Table only tells you what you can see , it does not tell you what you cannot see. For example, what if I want to know the Sales Turnover of Joan in Jan ? “No Value (or Null)” is also a valuable information that you want to know.

    Now, let’s see how we turn the Normal Table into a Pivot Table.

    JanFebMarTotal by Salesperson
    Angela3,0003,000
    Ann1,0001,000
    Anna5,0002,0007,000
    Total by Month5,0005,0001,000
    Sales Turnover Pivot Table (Salesperson , Month)

    In the Pivot Table , now not only you can see the consolidated total amount in terms of Month or Salesperson, but also can easily address the Cell with missing value.

    It’s glad to know, but still not impressive enough.

    Because in the previous example, it we only use 2 parameters (i.e. Month and Salesperson) to co-ordinate a value (i.e. Sales Turnover Amount). How about if you want to add an additional parameter , for example, Product ?

    MonthSales Turnover (USD$)SalespersonProduct
    Jan5,000AnnaApple
    Feb2,000AnnaBanana
    Feb3,000AngelaCherry
    Mar1,000AnnDragonfruit
    Sales Turnover Normal Table (Salesperson , Product , Month)

    While there is no big different in terms of the look and feel of the table except the additional 1 column added in the very right of the Normal Table, you can compare it with the new Pivot Table which added the Product parameter in below:

    SalespersonProductJanFebMar
    AngelaCherry3,000
    AnnDragonfruit1,000
    AnnaApple5,000
    Banana2,000
    Sales Turnover Pivot Table (Salesperson , Product , Month) , pivot by Salesperson

    Same as the Normal Table, an additional column Product is added immediately after the column Salesperson. And most important is that the Value Anna is shown only 1 time instead of 2 times (in Normal Table) due to the fact that the Pivot Table helps to “consolidate” the data to make it minimal.  

    While in the previous Pivot Table example there is the Total Amount , I skipped this information because it is not the focus on the essense of the Pivot Table. Feel free add the Total Amount any time you want to create a Pivot Table via using Google Spreadsheet ,Microsoft Excel or any Tabular tools.

    Now by referring to this Pivot Table , you can answer the question from your boss like:

    What is the performance of each Salesperson so far ?

    You can sense that the focus is on the Salesperson which the boss probably wants to decide the quarterly bonus based on the performance of each Salesperson.

    How about if the boss wants to see the profitability of his/her business? He may probably ask:

    What is the performance of each month since the beginning of the year?

    AppleBananaCherryDragonfruit
    MonthAnnaAnnaAngelaAnn
    Jan5,000
    Feb2,0003,000
    Mar1,000
    Sales Turnover Pivot Table (Salesperson , Product , Month) , pivot by Month

    Due to the fact that the focus of the question shifted from Salesperson to Month, we then put the parameter Month as the name of the row to present as the focus of the table. We name this action as pivot by Month. Compared with the previous Pivot Table which is pivoted by Salesperson, you can find that the name of the Salesperson Anna shows twice this time. Because as we want to consolidate the data of Month (i.e. pivot by Month), we can only sacrifice the neatness of the Salesperson.

    The term “Pivot” means whenever you want to rotate any one of the axises from 3 axises (for example), you need to use 1 axis to rely on. The axis you relied on is called the Pivot, while the axis is referring to the columns (or parameters, or dimensions , whatever you name it) in a normal Table. While in the physical world there can only be a maximum of 3 axises , you can add as infinity number of axises as you wish in logical world.


    Use Case of Pivot Table

    NOT for Recording

    Pivot Table is good for presentation and bad for atomic level recording. If you start recording by applying the data schema of the Pivot Table, you will realise that if you try to insert the value of the table like what “Sales Turnover Pivot Table (Salesperson , Product , Month) , pivot by Salesperson” Table did previously, eventually you will have some missing value in the cell of the row’s name. Besides, the Pivot Table can never serve the function of data processing in turns of filtering and sorting.

    Even worse, the client , including your boss, would like to derive different views for different scenarios in different periods of time. If you directly record the data in Pivot Table format, you will soon realise that whenever the client wants to change the pivot of the Pivot Table, say based on Month instead of based on Product, your previous effort on typing in the value , will be in vain. Therefore:

    Use Normal Table format to record

    Use Pivot Table format to present

  • Bingo! Theory

    Introduction

    When you search in the internet, although there is many other theory with the same name , Bingo! Theory (remarks : the “!” does matter) is a terminology which is invented by Diamond Digital Marketing to explain the priority of a project go vertically or horizontally.


    What is Bingo in real life

    Bingo is a popular game of chance where players mark off numbers on cards as they are randomly drawn by a caller. The goal is to be the first to complete a specific pattern, such as a horizontal line , vertical line or diagonal, and shout “Bingo!” to win.


    What is Bingo! as a Metaphor in Working Philosophy

    Let’s start the explanation by Figure 2. To gain the every time when you complete any of a Client which contains 4 Steps which costs you USD$5 per step, you will be rewarded by a Sales turnover by USD$30, which in turn you get a Bingo! and will bring you USD$10 (30 – (5 x 4) profit.

    However, you quickly realise that it is really hard for you to employ a staff who is resilient and has cross-talent which can cater both the 4 Steps covering Business Development , Design, Production and Marketing.

    To enjoy the economy of scale, you hired a Business Development Manager, a Designer, a Production Manager and a Marketer to cater 4 Steps separately and respectively. They work very hard and perform well in the very beginning, bringing you 4 times of Sales Turnover (i.e. 4 Bingo!) from Client A,B,C and D of USD$ (30 x 4) – (5 x 16) = USD$40 in total.

    However, one day your Marketer requested to resign from his position, which you understand and let him go. Due to the fact that you need to have Bingo! only if you can do both Step 1 ,2,3 and 4 at the same time, as now the Marketer is quit which cannot delivery the Step 4, which means that the effort of Step 1,2 and 3 for the Client A,B,C,D will all be in vain, costing you in total USD5 * 12 = USD$70 lost in total.

    In this example, you can see that if you do horizontally , you can deliver as minimum as 4 Steps for any of a Client which costs you USD$5 x 4 = USD$20 to get a Bingo! USD$30 Sales turnover.

    However, if you go vertically, even you have done 12 Steps which cost you USD$ 5 * 12 = USD$70 , which means that even though you are more hard working than the minimum 4 Steps, you still cannot get your Bingo! reward.

    This example exactly reflects the reality that the most hard working one is not necessarily the one who makes the most profit , only if you have learnt how to prioritise of your work.

    In most cases a great success is brought by a cross-talent ability, while in reality the education system only focuses on producing expert with specific talent. Whether you go broad (horizontal) or deep (vertical) is a matter of preference which is no clear cut right or wrong. However, it is crucial that at least you know if you are encountering this Bingo! Theory in your daily choice.

    In SaaS or traditional manufacturing industry , Minimum Viable Product (MVP) refers to a version of a product with just enough features to be usable by early customers who can then provide feedback for future product development. The MVP is a typical choice of go horizontal instead of go vertical.

  • Build a Business Process Management System – BFs-WAITER Pivot Table

    Build a Business Process Management System – BFs-WAITER Pivot Table

    Introduction

    Recap from the article Build a Business Process Management System – Stage of System Building that the MSC Matrix (Modelling – Standardisation – Coding) describing different stages of building a system. In this article, we dive into how we observe the real world to do the Modelling by using the BFsWAITER Pivot Table.


    Definition

    What is Pivot Table


    The “pivot” part of the Pivot Table comes from the way you can “pivot” or rotate your data to view it from different angles. It’s like being able to look at the same set of numbers from multiple direction. Please find comprehensive explanation in the article What is a Pivot Table.


    What is BFs-WAITER Pivot Table

    BFs-WAITER is a DDM Terminology which is the acronym of all the dimensions when describing a Business Process Management System:

    Business Rules

    Business Rules are the if-then-else conditional logic which the user of the system , or the system itself should comply with.

    For example, when you insert an email address in the Email Address Field of an Contact Us Form, the system will show an alert of “please insert an valid email address” if the “@” character is absent inside the email address. This is an Email Validation Rule that the web application developer will usually use.

    Besides the rules in programming, we can also find other rules in the business world. For example, you want to adapt a bundle discount in your business that if the clients buy both 1 shoe and 1 skirt in 1 order, they will enjoy a 10% discount. This kind of if-then-else condition logic can be named as Discount Rules, which is classified as one of the Business Rules. While you can and should customise the own business rules specific for your own business, there are some common Business Rules that we should cater in most frequently:

    1. Shipping Rules
    2. Discount Rules
    3. Coupon Entitlement and Redeem Rules
    4. Email Validation Rules
    5. Password Validation Rules
    6. Return and Refund Rules
    7. Pricing Rules
    8. Traffic Routing Rules

    Fund Flow (or Cash Flow)

    To be precise , the term Cash not only refers to the currency note or the debit balance in your bank account, but also the credit balance or any payment token. As there are too many ways to represent a payment, we name it all under the term Fund.

    Infact , Fund (or Cash) Flow, Information Flow, Stock Flow and Work Flow are 4 flows which we mentioned very often when describing a business process. Without surprise, Cash Flow is not going to be absent in our model.


    Stock (or Service) Flow

    The lowercase “s” inside the acronym “BFs-WAITER” means it is optional. Whether you want to record the Stock or Service Flow depends on if you should do stock (or service) taking on the product or service you sell.



    Work Flow

    Quoted from Wiki the definition of Time:

    Time is the continued sequence of existence and events that occurs in an apparently irreversible succession from the past, through the present, and into the future.

    While I am not going to (and not capable of) triggering the debate on what Time really is, referring to wiki, time is a continued sequence of Events.

    In a Business Process Management System, there is no better way to describe the Business Process than in the aspect of Time. While time is best to be presented in terms of Events, Events can be regarded as Steps or Procedures inside a Business. For example, in a Self-serve Cashier Register Checkout System :

    1. Client press the Start Button
    2. Client scan the Barcode over the package of the goods
    3. Product Quantity and Price shown in the Screen
    4. Client press Checkout Button
    5. Client pick a Payment Method and Pay
    6. Client get the Receipt printed by the Cashier Register Machine.

    Above is a typical but straight forward example on describe a Business Process. In most of the time ,Events are far more complicated than we can imagine. Allow me to introduce some concepts that you should master before you move forward:

    Backbone Events

    Back to our previous Cash Register Checkout System example, allow me to detail it as below:

    1. Client press the Start Button
    2. Client scan the Barcode over the package of the goods
      • If the Client want to remove the items, then ….
    3. Product Quantity and Price shown in the Screen
      • If the Client buy more than one item of the same SKU, then ….
    4. Client press Checkout Button
    5. Client pick a Payment Method and Pay
      • If choosing Apple Pay, then ….
      • If choosing Credit Card, then ….
        • If the Credit Card failed to process the transaction , then….
    6. Client get the Receipt printed by the Cashier Register Machine.
      • If the Cashier Register Machine is out of receipt printing paper, then….

    You can imagine in reality there are tons of if-then-else branches which can be happening in any of the steps. In some cases you cannot even imagine this scenario will happen until it really happens in front of you in real life. For better communication and project management purposes, we should in first priority identify the shortest path from start to the destination of the business process and skip all the possible if-then-else branches. (i.e. Clients get the receipt in the above example) We called this shortest path Backbone Events.

    Scenario

    Scenario means one of paths within all possible combinations of outcome which can but may or may not happen. To make it simple, let’s illustrate with an example:

    1. Finished input the Product Quantity > Choose Apple Pay > Transaction Success
    2. Finished input the Product Quantity > Choose Apple Pay > Transaction Failed
    3. Finished input the Product Quantity > Choose Credit Pay > Transaction Success
    4. Finished input the Product Quantity > Choose Credit Pay > Transaction Failed

    In the example above, while there are 3 steps , which :

    1. First Step have 1 option value
    2. 2nd Step have 2 option values
    3. 3rd Step have 2 option values

    To do the maths, there will be 1 x 2 x 2 = 4 possbile outcomes, and we call each of the outcome a Scenario.

    Imagine if there are 10 steps and each step has its own 2 option values, there will be 210 , which is equal to 1,024 Scenario. Addressing all these scenarios is already a huge challenge , not to mention catering them one by one.

    Recall the article Build a Business Process Management System – System Index Concepts, A good System caters all the scenarios after interacting with the environment, which is exactly what we have mentioned in this paragraph.


    Authority

    When you login an application, you are authorized to login after you insert a valid password. When you want to open the door of your home, you are authorized to do so only if you a have valid key. The password and key in these examples, are the Authority that we should have to carry out the action.

    The Authority is usally presented in following ways:

    Role Base Access Control (RBAC)

    It literally means that the Access Control is based on the Role of the user. For example, Only the Role of Admin in the website can install a plugin, while the Role of Guest User cannot.

    Session (Time) Base Authority

    For example, you rent a meeting room in a shared office for 2 hours. That means you are only allowed to access the meeting room within these 2 hours. After this 2 hours (i.e. Session), you are not authorized to access the room.

    Authorization Token

    In ancient times when there was no Facebook or Instagram, it was extremely hard for everyone in the country to know (in terms of the real face) who you really are. The only way to justify that you are the king of the country is to show some kind of Totem, like a imperial jade seal, which is the emblem of the authority for the local officer of the country to recognize the king. 

    Authorization Token is the same logic as the Totem in the ancient world. No matter who possesses at that moment, he/she is authorised. In morden world, whoever get the remote control (i.e. the Totem) of the TV set in the living room, who is the king/queen.

    In the computer world, we usually apply Authorization Token during the communication between system and system (i.e. not between system and human). For example, if you want to let your WordPress website to fetch the Instagram Feed directly from your Instagram Business Account, you should generate a Access Token (i.e. Authorization Token) from Instagram Business Account and pass it to the WordPress Website.

    While there is a rare case the Authorization Token is presented in a physical form, most of the time it is in fact nothing more than a meaningless cluster of strings that you keep in a secret computer file.


    Information (Document) Flow

    Recall the article Relationship between Human Learning and Data Structure , Data is the signifier (i.e the pointer) of the signified (i.e underlying objects).

    For example, the Sales Invoice is the signifier of the happened event of the delivered material products (i.e. the signified) , while the Payment Receipts is the signifier of the Cash material currency note (i.e. signified) paid physically (i.e. pay offline) to settle the Sales Invoice.

    By simply operating the Data , rather than operating the physical underlying objects, we can speed up the analysis of Business Process a lot.

    When a large amount of pieces of related Data bonded together bringing the user a meaningful value, they become Information.

    When we describe the Business Process in terms of information, we call it Information Flow.

    While most of the time the information will be presented in or delivered via a Document as a media of convey, we therefore use the terms Information Flow or Document Flow interchangeable.

    Whenever you master the information flow, you can get use of them by facilitating your decision making process in a timely and accurate manner.

    Tools

    A computer , a laptop, a Cashier Register Machine, a Camera, a PDF Converter Online Website, a Credit Card , can all be regarded as Tools, whatever you name it.


    Entity

    In legal terms, a legal entity refers to any organisation or individual with legal rights and obligations under the law. Such entities can enter into contracts, initiate or face lawsuits, and own assets in their own name.

    We pick the term Entity (instead of the term Person) because it may have both individual person and organisation , or somtimes even a system or an algo (how complicated this world become!) involved in the Business Process.

    On top of that, while in rare cases we can specifically address a particular person in a Business Process (for example, Anna, Ann, Joan , etc) , very often we can only put the Entity Type (instead of the Entity Instance) inside the Business Process. For example, Client, Admin Manager and User are the Entity Types we will describe in the Business Process due to the fact that we don’t know in advance which name client really is in the planning phrase.


    Risk (Problem Pattern)

    While the concept Risk is easy to understand, the term Problem Pattern is used in Diamond Digital Marketing Group very often, which is indifferent to Risk.

    In order to manage the Risk, we cater the following aspects:

    Identity the Risk (i.e. Frequency of the Risk)

    Some risks are easy to address. For example, human error on data entry. Nevertheless, some risks are invisible and can hardly be addressed, or even hardly be classified as risks. For example, when your salary is USD$50,000 per month , you are unlikely to realise that your ability is in fact worth USD$120,000 , which means you are risking USD$70,000 per month and you have no idea at all because you have already satisifed when you reached USD$50,000 per month.

    Probability of Risk

    Even if there is a chance that your business may suffer from alien-attack to the planet, you are more likely to cater to the risk of a fire accident compared with the alien-attack scenario. The chance (i.e. probability) that the risk happens will highly affect the priority that we handle the risks.

    Magnitude of Risk

    While you can foresee there is a high chance that the plastic bags which can be freely grabbed in the cashier by the client will be abused by the clients, you may probably not to cater the risk, at least not in a higher priority than catering the risk of the Google Ads campaign which brings the sales turnover to your business being restricted.

    Radius of Risk

    In hollywood movies, whenever there is a public health affairs which the zombie virus is going to spread out from the lab, the supervisor of the hero will make the hard decision to quarantine the people to the lab in order to control the radius of the virus spreading distance, in sacrifice of the survival chance of the people who are stuck in the quarantine zone. At this moment, the hero will stand up and rescue the innocent.

    Quantifying the Risk

    The first step of automating anything is by quantifying it. Quantifying the Risk is a combination of the Frequency, Probability, Magnitude and Radius of the Risks. The arithmetic operations will be explained in future articles.


    Putting BFs-WAITER into Pivot Table

    You can visualize that all the 9 Components (i.e. B/F/s/W/A/I/T/E/R) are in fact the 9 dimensions in the Pviot Table.

    It also implies that whenever you want to mention a single Step (or Event), you should at the same time mention the other 8 dimensions in order to coordinate that single Step (or Event). While it is really sophisticated for human beings to comprehend all the data points by a normal Table, a Pivot Table is a good presentation which visualises the relationships among all dimensions in every Data Point (i.e. a Cell in a spreadsheet). This significantly assists the communication among the stakeholders including client , programmor, system engineer, web developer , salesperson , system users and a lot more.

    Separate between modelling and standardization

    In BFs-WAITER, while Modelling means to enumerate all the option values of all the components , says all option values of Documents and Entity Type, Standardization means how to analyse the relationships among each component and interconnect them.  

    Modelling and Standardization are 2 different processes which will be carried out by 2 different roles in different time. While Salesperson or Consultant are more prone to listen to the clients in a sales meeting in order to enumerate the system requirements , documentations or stakeholders (i.e. Entity), System Engineer will on the other hand focus on logically connecting them in order for a meaningful and logical relationship.

    While it is much easy for the Salesperson to adapt a normal Table to records all the option values of all the components during a consultation meeting, a Pivot Table is a much more helpful tool for a System Engineer to connect the relationships and switch it among different presentation views (i.e. Pivot by different dimensions) within a second.


    In Diamond Digital Marketing Group, we will apply the BFs-WAITER Pivot Table as the main tool for Business Process Management System development. While this article is mainly focusing on the Meta System level in System Index , and the Standardization in MSC Matrix, any hands-on operation will be left for future chapters.

  • Build a Business Process Management System – Stage of System Building

    Abstract

    The Meta System aims to create a system that can, in turn, build other systems. This implies the presence of repetitive patterns or tasks that can be identified and reused within the Meta System. In this article, we will elaborate on and evaluate these patterns.


    Stages of Building a System

    First thing first, the most challenging part on writing this article is that as we are writing the guideline on how to build a system to build a system, it is really hard for both the reader and the author to address which System Index (i.e. System , Meta System , Meta System2) that he/she is reading/writing. The only suggestion to keep your mind clear is that , read this article only when you get 100% energy fully charged.

    While discussing how to build the Meta System, we first need to address how to build a system itself. Regardless of the system you’re building, you will need to consider these four objectives, and the order in which you achieve them is important. Allow me to introduce the MSC Matrix (Modelling-Standardisation-Coding ) as below:


    Stage 1 – Modelling

    Let’s start with an example , assuming that you are the Software Engineer who is responsible for building a Cashier Register System for your MNC scaled supermarket.

    As mentioned in previous article that a good system can cater all possible outcome , which the system interacts with the environment. Allow me to named the term “all possbile outcome” as Sample Space,

    Before we jump into the execution level to discuss step by step on how to enumerate every single instance within the Sample Space, I would rather in theory discuss what is and when we need to do the Modeling.

    If the objective of us (i.e. the Cashier Register System) is to cater all possible outcomes (i.e. Sample Space) interacting with the environment1 (i.e. the environment of a MNC scaled supermarket), finding out the Sample Space will be the prerequisite before every other steps.

    However, as a human being, bounded by our mortal presence and limited compute power, it is extremely difficult , if not impossible , to enumerate all the instances inside the Sample Space. For example, instead of describing how the clients bring the goods into the cashier conveyor belt, are you going to write an Apocalypse Handbook describing how to survive during an alien attack during the opening hour of your supermarket, as the very 1st presentation session to your C-Suite boss?

    Although you might think there is a chance to happen (which i am on your side, bro!) and you may have the chance to become a superhero, you may not dare to do it to risk your career path in this company. If you nod your head, it means that you are filtering what is appropriate and what is not appropriate to put into the system, which is named as Modeling.

    You may challenge that human decision is always paired with a risk. While you start filtering , it is no longer all possible outcomes, which I totally agreed with. However, as stated before, due to the limited resources , we need to strike a balance between the Utopia and feasibility. The more experienced the Software Engineer is , the higher chance that he does the modeling which is close to reality. It is more of an art than a science.

    The rule of thumb is simple:

    The higher chance it will happen , the higher the priority to be recorded.

    If you are “I.T.” enough, you can draw the Entity Relationship Diagram to do the Modelling. If you not , simply using a Google Spreadsheet will be good enough for enumerating and communicating all the factors and components  


    Stage 2 – Standardization (SOP)

    Once you have do the Modelling by filtering all the relevant steps, concepts or objects in priority, you can do the Standardisation. In business world , you can also refer this standardization action as SOPStand Operation Procedure.

    Whatever you name it , Standardisation (or SOP) is a procedure which you can apply anywhere within your business scope. For example, you can standardise the procedures of the self-serve checkout function in the Cash Register System as below:


    1. The customer brings the goods in front of the Cash Register
    2. The customer picks up the one goods and uses the scanner embedded in the Cash Register to scan the barcode printed in the package of each goods.
    3. The product information will be shown in the screen of the Cash Register
    4. The customer presses the Checkout button on the screen, and brings him to the Payment Screen.
    5. The customer chooses the Payment Method, Apple Pay for example.
    6. The customer scans the Apple Pay QRCode shown in the screen of the Cash Register by the QR Code scan of his/her smartphone.
    7. The checkout process is successful and the receipt is printed

    Although the steps mentioned above is only the backbone procedures (as enumerating the Sample Space is not the focus of this session, i will bypass this exercise) , the above 7 steps will be happened almost every time for every single customer bringing the goods in front of the self-serve checkout Cash Register.

    In this stage, while you are standardising the procedures , please do not rush to think of or work on any programming or coding stuff. Especially when you have a programmer background with solid hands-on coding experience, it is very tempting for you to dig into the code and write any kind of framework , database or UI to start building the software. Because in your mind you may think that Coding means automation, and automation means efficiency. You are wondering why the frontline staff need to spend double time on doing the same steps while you can automate them via coding.

    Indeed you are not wrong. However, you are not correct either. Because Coding is a all-or-nothing game. You cannot write 80% of the code and bring it to production stage. Any of a single tiny bug might bring the application to fatal error. And then you need to condense all your energy into fixing that bugs. Once you sink into coding, you will spend most of your time focusing on coding for a single step of the whole system, which in turn you cannot get use of the man hour of your frontline staff and can only let them idle because they do not know what to do without any standardised procedures for the whole picture.


    Allow me to illustrate this concept with Bingo Theory

    Bingo Theory is a terminology invented by Diamond Digital Marketing , which is a all-or-nothing concept stating that if someone does not finish all the steps in a business line (i.e. Say Bingo! in a Bingo game), all his effort will be in vain no matter how much he had already contributed.

    Illustrated in Figure 1, if there are 5 Steps to say Bingo! in each stage , we can conclude that:

    1. In Modeling Stage , due to the fact that we do not enjoy the efficiency brought from standardising or coding (i.e. automation) the procedures, the cost of each step will be £5 , which brings a total cost of £25 to say a Bingo!. As long as the reward of Bingo! is £30, there is still a £5 profit in Month 1.
    2. In Standardisation Stage, due to the fact that we have to do all the 5 steps in both Modeling Stage and Standardisation Stage in each step, therefore the total cost per step is £5 + £3 = £8. Therefore you will get £30 – £40 (£8 x 5) = £10 Lost in month 1.
    3. In Coding Stage, same logic as Standardisation Stage, the total cost per step is £5 + £3 + £1 = £9, and therefore you will get £30 – £45 = £ 15 Lost in month 1.

    Based on Figure 1 ,you can deduce that when the time goes by (i.e. Month 2 and 3), your business in Coding Stage will get the highest profit due to the fact that it can enjoy the efficiency generated from coding (i.e. automation), provided that your company have sufficient fund (i.e. -£15 Lost in month 1 , and -£5 Lost in month 2) for you fill the deficit for your business survival. For sure, it is also not the greatest decision for any business to stay forever in the Modeling Stage to gain the minimum profit due to absence in Standardisation and Coding.    

    While striking a balance between efficiency and sustainability is case by case, If you are similar to us without solid external financial support , it is suggested to go for Standardisation before directly jumping into the Coding Stage. On the contrary, if you have external financial support, please contact us and invest in us!


    Even worse, while you are drowning in Coding , some of the smarter frontline staff might find their own way to carry out the Cash Register procedure based on their past experience, which brings your business to risk. While your whole business now all rely on the frontline staff, you may have either wrong procedures which cannot cater the backbone procedures, or you may have many ways to do the backbone procedures due to the fact that each different smart staff may have their own working style and hence suggesting different procedures. Regardless which way it takes, it will in turn either generate errors or arguments , i.e, extra cost incurred.

    Therefore, please be reminded again that in this Standardisation Stage, what you should do is simply to standardise the procedures making your Cash Register System functional.

    Instead of coding, you can standardise the procedure in an Google Spreadsheet, in a Google Document, or even verbally or taking a video to record the step by step actions, depending on what way you and the users are comfortable. The purpose of the standardisation is to avoid the miscommunication due to the ambiguous definition of the benchmark of the input or output of the task. Manually input or output will be good enough in this stage.

    Besides, there is a big difference between System and Software. Imagine 60 years ago before computers were popular, the supermarket with a manual Cash Register already existed. Even without the aid of computers, they can still run properly, if not as smoothly as nowadays.

    In this sense, standardising all the procedures with manual input will be good enough for this stage. By standardising all the steps within the Checkout procedures, you can eliminate most of the errors generated by humans, which in turn free your hand from error handling and human resources training.

    By using the extra time earned from error handling, you can spend the time profit you saved to do the coding stuff in the next stage.

    And I can officially and seriously tell you putting the Standardisation Procedures between Modelling and Coding is the key to success in running a business. When you read through the financial reports of some of the leading companies, you might realise that their spending on R&D (Research and Development) can always be absorbed by their profit, which makes their research and development sustainable. If your whole business consumes most of your resources on developing the coding and automation of the Business Process Management System, the daily operation will be ruined. On the contrary, if your business keeps staying on Modeling Stage, your business will only become a theory which can never be realised, or at least the slope of the development curve will grow too gentle and behind your competitors.


    Stage 3 – Coding

    Coding Stage implies to automate all the standardised procedures of the Business Process Management System as much as you can by any kind of programming language , or even simply Google Spreadsheet Formula.

    Bringing the company to this stage is a milestone in which you can outperform your competitors. Although I am not going to describe the step by step guideline in this article, i would like to share some rules of thumb of the Coding Stage as below:

    1. Automate the procedures which happen most in 1st priority. 
    2. Automate the procedures which is easiest in coding in 1st priority.
    3. Rhythm between operation and development is the key to success in business. Always get a “C” grade to survive first, and get a “A” grade with the spare resource. Perfectionism always deficit first. If Apple , the manufacturer of iPhone is a perfectionist, it should only have iPhone 1 and not iPhone 16 because iPhone will wait until all the features are “perfect” before it is launched in the market.

    In conclusion, each record (or row) in Model-Standardise-Coding Matrix is for a specific objective in the Business Process Management System. If you have 10 steps in your Business Process Management System, you do not need to do all the 3 steps (for example) in the Modelling Stage before you can move to the next Stage. I personally suggest a horizontal move (Table 1) before vertical move (Table 2) due to the based on Bingo! Theory. Nevertheless ,whether you go vertically or horizontally is dependent on the resources and manpower capacity of your company which is a preference and not right or wrong.

    Stage / StepStep 1Step 2Step 3
    ModellingDay 1Day 2Day 3
    StandardisationDay 4Day 5Day 6
    CodingDay 7Day 8Day 9
    Example of Horizontal Model-Standardisation-Coding Matrix (Table 1)
    Stage / StepStep 1Step 2Step 3
    ModellingDay 1Day 4Day 7
    StandardisationDay 2Day 5Day 8
    CodingDay 3Day 6Day 9
    Example Vertical Model-Standardisation-Coding Matrix (Table 2)

    1. Refer to article Build a Business Process Management System – System Index Concepts
      ↩︎
  • Build a Business Process Management System –  System Index Concepts

    Build a Business Process Management System – System Index Concepts

    Definition

    What is Business Process Management System

    Business Process Management System is the system which you want to standardize and automate literally any business procedures happened in your business routine. While some of the Business Process Management System, for example , a CRM System (Customer Relationship Management) is mature and well modularized which you can subscribe any canned CRM SaaS easily, some of the business routine, for example , a factory owner who wants to standardize the routine of the production line, should be customized and hence a Business Process Management System is needed to be built on purpose.


    What is a System

    Before we dive into the definition of a system, allow me to start the paragraph with the citation from a ancient wisdom.

    The whole is greater than the sum of its parts

    Aristotle

    While the statement from Aristotle is a genius idea exactly addressing the synergy which is derived from the system, the statement by itself does not have any executable guide for people to follow.


    Input-Process-Output Model

    In practical, you can take the definition of system as an  Input-Process-Output (IPO) model which is a framework used to describe the structure of a system or process. Here’s a breakdown of each component:

    1. Input: These are the resources, data, or materials that enter the system. Inputs can include raw materials, information, energy, or human effort.
    2. Process: This is the transformation stage where inputs are converted into outputs. It involves the steps, actions, or operations performed on the inputs.
    3. Output: These are the final products, results, or outcomes that exit the system after the processing stage. Outputs can be goods, services, information, or any other result of the process.

    In a daily example, when you want to withdrawal the cash from ATM machine, you insert the debit card and input the password and withdrawal amount (Input), then the ATM machine do the calculation on deducting the balance from your bank account (Process), and finally the currency note come out from the slot (Output). 

    Whatever if when you input the same thing, it will always process the same thing and output the same thing, this is call a System.

    A system is not necessarily related to “computer” or “digital”. For example , all of us in our body have a respiration system, digestive system , nervous system and so on. 


    Systems Chain

    After you get the Cash from the ATM machine, and then go to the train station and put the cash note into the self-serve Ticketing machine to buy the ticket. Immediately after you chose the destination and number of tickets, the ticket dropped out from the ticket slot.

    You can realise that in fact the Cash that you withdrawal from the ATM Machine before, is in fact the at the same time BOTH Output of the ATM Machine (i.e. the 1st System) and the Input of the Ticketing Machine (i.e. the 2nd System).

    The Output of a system is always the Input of another.

    So if the story goes on, you may realise that you can link up literally anything , i mean anything, no matter material or immaterial ,in this world by the System Chain concept. In fact, it is a philosophy of how you interpret the world. When you think like this , you will become a Philosopher. When you act like this , you will become an Engineer.   


    Scope of a System

    So we back to our ATM machine example. To recall your memory , a System implies you will always get the same output if you provide the same input. As long as the following the criteria are satisifed , you will always get the cash note:

    1. The Debit Card is functional
    2. Password is correct
    3. Your bank account have sufficient fund
    4. ATM Machine is functional
    5. ATM Machine cash slot has sufficient cash note

    I will congratulate you if after you read and you want to challenge me that there is nothing can be “always” except “the Change” itself. In fact, deciding what components are related to the system among the infinity number of concepts from the world , is as important as building the components inside the system.

    What if there is out of electricity supply during the transaction?

    What if the operating system inside the computer of the machine is down?

    What if the internet connection between the ATM machine and the terminal server is broken?

    in the world of Business Process Management System development, while Programmer is more on automating the system via coding for the components and functions within the system, an Engineer is more about observing the world to address what components are related to the system, as well as figuring out the interaction between the environment of the system and the system itself. 

    Coverage of the System

    What if you hungover and input the wrong passwords 3 times? If this is the case , the ATM machine will eat the card and then the screen will show up asking you to contact the staff of your bank, and then of course the user (i.e. you) will kick the ATM machine and growl a FXXX.

    When you start thinking like this, to think of all possible scenario which may be happened during the Usage of an ATM machine, you may realise that this is the most difficult part of building a system due to the fact if you are trying to identity all the if-then-else scenario and chain them up based on their dependencies , you will visualize a if-then-else decision tree diagram which finally enumerate almost infinity number of potential outcome that might be happened, that is why Dr. Strange said he considered 14,000,605 possibilities in Avengers 4. The parallel universe begins.

    If you start doing the job to test the possibilies and user scenario of a software, you become a UAT Tester. If you start thinking of how to find a way to scientifically enumerate all the possiible outcome among all the if-then-else scenario, you will become a Mathetican in the aspect of Statistic, Graph Theory and Optimisation Theory.

    A good System caters all the scenarios after interacted with the environment

    Finally, before ending this session , back to the ATM example, you can consider to put the hidden microphone inside the ATM machine in order to record the FXXX after the user kicked the ATM machine because of Debit Card being eaten by the ATM machine, which is one of the possible scenario that you can think of, despite out of the scope of ATM machine software development. 


    What is Meta System

    Build a System to build another System

    As the ATM Machine metaphor continues, instead of the ATM machine user, now you become the engineer who built the ATM Machine. Based on the reading and you realise that to build an ATM Machine (i.e. a System) you need to cater all the possibie if-then-else use cases.

    One day, you successfully created a ATM Machine system which is very useful, and the CTO of the bank is going to bring your design to mass production. The next challenge is, how to justify the output quality of the ATM Machine?

    It is quite inevitable and reasonable to think of building another system to build the ATM Machine. And therefore here comes another System which builds the ATM Machine, which we name this kind of system as Meta System.


    What is System Index

    If you are crazy and idle enough, you may wonder what if I can build a System that can build a system to build a system (notes : there is no typo)? When in our daily conversation it is really hard to tell which level of System we are referring to, allow me to name the 3 Level of system as below:


    Level 1

    System : To standardize and automate a specific function

    Level 2

    Meta System : A system to build the System in Level 1 which search a specific function (i.e. build a system to build a system)

    Level 3


    For better communication, we, Diamond Digital Marketing, named this concept of System Level as System Index.


    While you can still understand why it is a need for the Meta System, you may in this moment consider Meta System2 as excessive. I understand your feeling and will suggest you to be patience to read the comprehend the whole idea in this or upcoming articles, which in turn will let you realising why there is a must for a Meta System2 and how many hundreds of hours and manpower you can save during the system development cycle.


    Suggested Reading

  • Add a New Partner to the Business Portfolio of your Meta Business Suite

    Add a New Partner to the Business Portfolio of your Meta Business Suite

    Definition


    Meta Business Suite

    Meta Business Suite (or formerly known as Facebook Business Suite) is a comprehensive Meta assets management tool designed to help businesses manage their activities under Meta Platforms, Inc. including Facebook, Instagram, Whatsapp Business and Meta Messenger from a single platform.

    Business Portfolio

    One Meta Business Suite can have many (i.e. One to Many relationship) Business Portfolio because a company can have more than 1 business name or business line which all put together under 1 single Meta Business Suite Account. The Business Portfolio is simply the unit which differentiate different business name or business line under the same Meta Business Suite.

    In the case of an digital marketing agency, as an digital marketing agency always help more than 1 client to manage their Meta Assets, and therefore each client’s Meta Assets will be differentiated with a separated Business Portfolios , which all these Business Portfolios from different clients can all put under 1 Meta Business Suite account of a digital marketing agency.

    Partner

    Partner is an entity, such as an agency or another business, that you grant access to your Meta Assets within your Business Portfolio. This can include your Facebook Page, Instagram account, ad accounts, Whatsapp Business Account and more. By adding a partner, you can collaborate with them on managing your social media presence, running ad campaigns, and analyzing performance.

    Also be reminded that the Partner in here is totally different and concept – Meta Business Partner , which is literally the real business partner of the Meta, Inc.

    Add a New Partner

    To be precise , when you are pressing the Add a new partner button inside the Meta Business Suite interface, you are in fact adding a Partner (e.g. your appointed Digital Marketing Agency) into your Business Portfolio, while the term Partner is referring to a Business Portfolio Account which is unique identified by a Business ID, implying that you are NOT adding the Facebook Business Page of your appointed Digital Marketing Agency as your Partner, nor are you inviting individual Facebook Personal Account (People) owned by the staff of your appointed Digital Marketing Agency to manage your Business Portfolio Account.

    Your Business Portfolio can add as many Partners as you like to manage particularly different Meta Assets.

    Below is the Meta Business Suite Partner Business Portfolio Chart Extract (Figure 1) which in large extend simplifies the hierarchical relationship between your and Partner’s Business Portfolio Account.


    Use Case – When to Add a New Partner

    As a Business Owner

    Assign Access Rights to your Digital Marketing Agency

    It is straight forward that when you as a business owner , after you have appointed an Digital Marekting Agency, you will need to assign the Access Rights of different kinds of Meta Assets , including Facebook Business Page and Meta Ads Account , to the Digital Marketing Agency so that they can mange the Meta Assets on behalf of you.


    What Problem Patterns the Adding a New Partner solves

    Comparsion between Adding a New Partner and Inviting a People

    As mentioned in the Article Invite people to the Business Portfolio of your Meta Business Suite that as a Business Owner, you can always directly assign the access rights of your Meta Assets by inviting a People (i.e. an individual person, probably the staff of the appointed Digital Marketing Agency) to manage your Meta Assets on behalf of you.

    However, there may be some down side while you are taking the way in above, due to the fact that:

    Extra workload when People is onboard / quit

    Imagine every time when your appointed Digital Marketing Agency hires a new staff , which on the flip of coin means that an existing staff is going to quit, you as the Business Owner , need to both invite a new Person and remove the access rights of the going-to-quit staff from your Business Portfolio, not to mention that you probably have to invite the staff of your appointed Digital Marketing Agency coming from I.T , marketing and creative design team.

    Instead of inviting them one by one , you can directly and simply add the appointed Digital Marketing Agency as a new Partner only for one time. And all the human resource turnover will not be your problem because the workload of linking up the Business Portfolio to the People (i.e. staff) will be shifted to your appointed Digital Marketing Agency.


    Sophisticated Matrix among Permission Level, People and Meta Assets

    Think about the Matrix in below which highly reflects the reality in your Business Portfolio:

    People involved

    1. Marketer
    2. Designer
    3. Data Analyst
    4. Finance
    5. I.T Guy

    Access Rights Permission Level

    1. Full Control
    2. Partial Control

    Meta Assets

    1. Facebook Business Page
    2. Instagram Business Page
    3. Whatsapp Businesss Account
    4. Dataset (Pixel)
    5. Domain
    6. Meta Ads Account

    In reality like the above Role-based Access Control example, you may not realise that you finally may need to take (6 * 2 * 6) = 72 actions during your Access Rights assignment exercise, not to mention that the turnover of the People.


    Account Quality of the Facebook Personal Page of the People

    With a bit of luck, you may not realise that if the Facebook Personal Page of the People whom you assigned him/her Full Control access rights of your Business Portfolio, whenever that Facebook Personal Page is restricted by any reason, outstanding ads bill balance for example, the Business Portfolio which under he/she control (i.e. your Business Portfolio) will also be restricted.

    By Add a Partner instead of inviting individual People to manage your Business Portfolio, you can avoid this risk exposure.


    Prerequisite of Add a New Partner

    Before you can add a New Partner to manage your Business Portfolio, following items should be prepared:

    For the Target New Partner:

    1. The 16-Digit Business ID (of its Business Portfolio)
    2. The Registering Email which is used to create the Meta Business Suite account which contains the target Business Portfolio.
      • Make sure the Target New Partner is ready to login the Registering Email address without any hiccup. (e.g. Lost password, 2FA device missing and e.t.c.)

    For the Business Owner and Meta Business Account Owner who want to Add a New Partner:

    1. Email Address (i.e. Registering Email Address) which is used to register the Meta Business Suite Account which contains the Business Portfolio that you want to share should be ready. This is due to the fact that in case (quite often) you want to assign the Full Control (i.e. highest) access rights level the Partner, Meta Business Suite will require you to verify your (i.e. owner) Registering Email Address before you can successfully assign by sending you the verification email to your Registering Email Address.  
    2. Login of the Facebook Personal Page
      • By accessing the Meta Business Suite interface, you should have logged the Facebook Personal Page which has the Full Control of the Business Portfolio that you want to share.
      • Be alert that thanks to ex-staff you may have many Meta Business Suite ,many Facebook Personal Page and many Business Portfolio , no matter you know or not know their existence. Therefore, before sharing the Business Portfolio to the Partner, make sure the Business Portfolio you are going to share is the one which is linked up with the underlying Meta Assets that you want your New Partner to manage on behalf of you.
    3. Suggestions from New Partner which Meta Assets you want to share.
      • The only shortcoming to adding new Partner (instead of inviting individual People to manage your Business Portfolio) is that you need to share each Meta Assets to the Partner one by one, which means that you cannot simply share the Full Control to your appointed Digital Marketing Agency and let them assign the Meta Assets by themselves. Therefore, you can suggest your appointed Digital Marketing Agency to prepare in advance a sharing list before you sit in front of the computer to do the operation. 
      • In most cases, you may realise at the last minute that the Meta Assets that you want to share to your appointed Digital Marketing Agency in fact do not exist. Therefore, having the Meta Assets list in advance will avoid this embarrassment.
    4. Ownership lists of the Meta Assets
      • As mentioned in the #3 in the previous paragraph, very often the Meta Assets that you want to share to your Partner may even not exist. For example, you may not realise that you need to have a Meta Assets of Dataset (Pixel) or Meta Ads Account. Especially in the rush of the deadline of your project, your Partner may not be able to wait for you to create the Dataset (Pixel) or Meta Ads Account for you, which in turn they will create their own and everything just works fine! Until the day you cease working with your Partner , all the Meta Assets will be broken which you may probably need to rebuild again. And therefore, to own the Meta Assets are always the 1st priority of running a social media account.

    Step by Step Guideline on how to Invite People

    Steps For Business Owner

    1. Login facebook.com by the Email Address which you have the Full Control of the managing the Business Portfolio that you are going to share to your Partner.
    2. Browser1 > + (New Tab)
    3. business.facebook.com/latest /settings/business_info/2
    4. Partners > Add ▼ > Give a partner access to your assets
    5. Add a new partner > Enter Partner Business ID3 > Next
    6. Select assets and assign permissions > Select asset type ​> Select assets4 > Assign permissions > Full control (business tools and Facebook) > Everything Icon Turn On Toggle 64x64 > Assign assets5
    7. Assets assigned
    Select assets and assign permissions Assets assigned
    Select assets and assign permissions Assets assigned
    1. business.facebook.com/latest/ settings/business_info > Users > Partners

    Steps For Assignee (Assigned New Partner)

    1. Step#8 in Steps For Business Owner completed
    2. Login <<PARTNER_REGISTERING_EMAIL>>
    3. Email Title = You can work on a new page on Business Manager from [email protected]
    4. Visit Business Manager > Partners
    You can work on a new page on Business Manager
    You can work on a new page on Business Manager

    Steps For Buiness Owner to modify the Access Rights in the future

    It is likely the case that you may not assign all the Meta Assets to your Partner in one shot. No worry and you can always add/remove Assets by:

    1. business.facebook.com/latest/settings/business_info > Users > Partners
    2. Details > Assets you shared > Assigned assets
    3. <<ASSIGNED_META_ASSETS>> > Manage

    1. Should be the same Browser used in Step#1 ↩︎
    2. Check whether the business_id found in the URL of the address bar in the browser is the Business ID you want to share to your Partner to manage ↩︎
    3. Request the 16-Digit Business ID from your Partner. For example, 1787800488180171 ↩︎
    4. You should at least choose one asset before you can add a Partner. Please ask your Partner to provide the lists of Meta Assets assignment beforehand. ↩︎
    5. You can either apply the the principle of least privilege (PoLP) or bear the cost of spending time to take care of the permission requests every time in the future. Make sure you understand the benefit and risks of your actions. ↩︎
  • Marketing Nerual Networking Model

    Definition

    A Neural Network Model, also known as an artificial neural network (ANN), is a type of machine learning model inspired by the structure and function of the human brain. 

    While this model is applied in the Marketing domain, it becomes the Marketing Neural Networking Model.

    Instead of diving into the intricacy of the mathematical formula and operation, we instead will put the spotlight on the semantic logic behind the calculation.


    What Problem Pattern the Marketing Nerual Networking Model Solves

    Formulate Markeitng Strategy via A.I.

    In a nutshell, while Marketing Consultant is mainly to providing Marketing Strategy, a Marketing Strategy is simply making a series of decisions on how to choose among alternatives. For example, if you want to sell a Tattoo Printer to teenages, will you use Facebook or Instagram to promote your product?

    To choose between “Facebook” or “Instagram” (i.e. 2 alternatives) is called Marketing Strategy. For sure, in reality, it always takes more than 1 factor (or attribute) to make a decision, and takes more than 1 decisions to formuate a strategy . You can imagine it’s in fact a dynamic decision chain in which the outcome of 1 decision will affect not only the outcome, but also even the option values (i.e. all alternatives) of the decision.

    The Marketing Neural Networking Model is purposed to learn and solve how to make decisions in a scientific way.

    Only after we turn the decision making process in a scientific way can we automate the decision making process via A.I. by applying the Marketing Neural Networking Model, which in turn creates an A.I. Marketing Consultant.


    How Marketing Neural Networking Model look likes

    Although the intricacy of the Neural Networking Model is a bit scary, decoupling it in piecemeal and demonstrating with a story, will definitely aid you to comprehend the concept more efficiently. Bear in mind that it is obviously a simplified example which in reality will be 1000 times in scale.

    Before starting the story, allow us to provide you the legend of the Figure (Marketing Neural Networking Model) above:


    Rectangle ( ▭ ) : The Attribute (or Property, or Layer) of the Object, which the Object is the Marketing Neural Network Model.

    Circle () : Nodes (i.e. any Business Concepts)

    Sold Line ( ⎯⎯ ) : Positive Edges which has directionaly relationship between 2 Nodes

    Dot Line (···) : Negative Edges which has NO directional relationship between 2 Nodes


    Imagine you are the CEO of a conglomerate which at the same time run a Fashion Retail Store as well as a Diamond Wholesaler business. You are required by your shareholders to incrementally increase the ROI of the conglomerate by 10X, which is quite an impossible mission. In order to achieve this goal, you start by enumerating all the “Concepts” (i.e. the Node) in your mind which related to the business as below:

    1. Fashion Retail Store
    2. Diamond Wholesaler
    3. Website
    4. Google Merchant Center
    5. Linkedin Business Page
    6. Ads
    7. Payment Gateway
    8. Feed
    9. Enquiry Form

    In reality, the process of addressing , enumerating and filtering all the Concepts (i.e. the Nodes) relating to the business is almost an impossible task for human beings. The more knowledge Nodes the marketer acquired and manipulated, the more professional he is.

    Back to our story, immedate after you enumerated all the Nodes in your mind which you think are related to your business, you addressed some pattern that there are some patterns within these Nodes:

    Causal Relationship

    Having played around with the interface of the Google Merchant Center for a day, you realized that Google Merchant Center is mainly designed for listing the products in the storefront of Google Shopping Tab in retail price, and therefore the Google Merchant Center is better to apply in any retail instead of wholesale business because there is no any field for the Google Merchant Center to insert any tiered pricing or bulk discount in the storefront. In this sense, you addressed that what Digital Assets (Attribute) you are uisng will be dependent to the Business Model (Attribute 1). Therefore you deduce your own business rule (which is called business intelligent in the business world) as below:

    Business Rules 1 : Digital Assets is dependent to the Business Model

    By applying Business Rules 1 in your business, you decide to adapt the Google Merchant Center into your Fashion Retail Store (Edge 2) and meanwhile NOT adapt in your Diamond Wholesaler business (Edge 5)

    Correlation Coefficient

    While having 10 years experience on using Linkedin Business Page, you understand that the users who are responsive in Linkedin are mainly seeking for business opportunities (i.e. B2B) instead of retail purchasing (i.e. B2C). Although you have this “insight”, you still from time to time scrolled to some Feeds in Linkedin which are selling to retail customers. As you cannot 100% sure about your insight, and therefore you classify it as a Correlation Coefficient (denotes “r”) relationship which the Correlation Coefficient of the responsiveness between Linkedin Business Page and Retail Business is low (e.g. r=0.3) , and meanwhile it is high (e.g. r=0.9) between Linked Business Page and Wholesale business.

    In this stage, you can bypass the understanding of the mathematical operation of the Correlation Coefficient. What you need to know is simply that the higher the value of the Correlation Coefficient (r) , the closer the relationship to (Positive) Causal Relationship.

    Now based on the Correlation Coefficient which is conducted by your empirical study, you deduce other Business Rule as below:

    Business Rule 2 : The responsiveness of the Linkedin Business Page is high for Wholesale Business and low for Retail Business.

    By applying Business Rules 2 in your business, you decide to adapt the Linkedin Business Page into your Diamond Wholesaler Store (Edge 6) and meanwhile NOT adapt in your Fashion Retail Store business (Edge 3)


    By continuing deducing the Business Rules based on your experience or any other statistic, you figured out the following Business Rules for the Edge as below:

    Decision#Involved EdgeBusiness Rules
    Edge #1 and #7Fashion Retail Store > Website > AdsFashion Retail Store needs Website as the landing page of placing Ads.
    Edge #1 and #8Fashion Retail Store > Website > Payment GatewayFashion Retail Store needs Payment Gateway to install in Website to receive payment from Client
    Edge #1 and #9Fashion Retail Store > Website > FeedFashion Retail Store needs put the Feed in the Website for content marketing articles publishing
    Edge #1 and #10Fashion Retail Store > Website > Enquiry FormFashion Retail Store needs put the Enquiry Form in the Website for replying questions from client.
    Edge #2 and #11Fashion Retail Store > Google Merchant Center > AdsFashion Retail Store needs Google Merchant Center showcasing their product in Google Ads Campaign
    Edge #2 and #12Fashion Retail Store > Google Merchant Center > Payment GatewayGoogle Merchant Center does not support Payment Gateway
    Edge #2 and #13Fashion Retail Store > Google Merchant Center > FeedFashion Retail Store needs to turn the Product Page of the website to Google Merchant Center’s Feed
    Edge #2 and #14Fashion Retail Store > Google Merchant Center > Enquiry FormFashion Retail Store does not support Enquiry Form Function
    Edge #3 and #15Fashion Retail Store > Linkedin Business Page > AdsAds placed in Linkedin Business Page is not appropriate for Fashion Retail Store
    Edge #3 and #16Fashion Retail Store > Linkedin Business Page > Payment GatewayLinkedin Business Page does not support Payment Gateway
    Edge #3 and #17Fashion Retail Store > Linkedin Business Page > FeedAudience of Linkedin Business Page is not expected Retail Feed from Fashion Retail Store showing in their Linkedin Personal account.
    Edge #3 and #18Fashion Retail Store > Linkedin Business Page > Enquiry FormThere is no Enquiry Form function in Linkedin Business Page
    Edge #4 and #7Diamond Wholesaler > Website > AdsDiamond Wholesaler needs Website as the landing page of placing Ads.
    Edge #4 and #8Diamond Wholesaler > Website > Payment GatewayDiamond Wholesaler does not expect the client to place order in the Website directly. Therefore Payment Gateway is not needed.
    Edge #4 and #9Diamond Wholesaler > Website > FeedDiamond Wholesaler needs put the Feed in the Website for content marketing articles publishing
    Edge #4 and #10Diamond Wholesaler > Website > Enquiry FormDiamond Wholesaler definitely needs Enquiry Form in the Website as the client will ask for product info and transactional info before placing order.
    Edge #5 and #11Diamond Wholesaler > Google Merchant Center > AdsDiamond Wholesaler may not need to place the Ads via Google Merchant Center Campaign because Google Merchant Center do not support tiered-pricing or quantity pricing function.
    Edge #5 and #12Diamond Wholesaler > Google Merchant Center > Payment GatewayGoogle Merchant Center does not support Payment Gateway
    Edge #5 and #13Diamond Wholesaler > Google Merchant Center > FeedDiamond Wholesaler may not need to sync the Product Feed from their website to Google Merchant Center because Google Merchant Center do not support tiered-pricing or quantity pricing function.
    Edge #5 and #14Diamond Wholesaler > Google Merchant Center > Enquiry FormThere is no Enquiry Form function in Google Merchant Center.
    Edge #6 and #15Diamond Wholesaler > Linkedin Business Page > AdsDiamond Wholesaler is appropriate to place Ads in Linkedin Business Page to seek for the management level Decision Maker or Merchandiser based on the Job Title Ads segmentation. 
    Edge #6 and #16Diamond Wholesaler > Linkedin Business Page > Payment GatewayLinkedin Business Page does not support Payment Gateway
    Edge #6 and #17Diamond Wholesaler > Linkedin Business Page > FeedDiamond Wholesaler is appropriate to publish Feed in Linkedin Business Page to seek for the management level Decision Maker or Merchandiser.
    Edge #6 and #18Diamond Wholesaler > Linkedin Business Page > Enquiry FormThere is no Enquiry Form function in Linkedin Business Page
    All Decision Combinations Table of the Marketing Nerual Networking Model

    Points to note

    1. Although there are only 18 Edges inside the Model, there are in fact 24 Decision Combinations that we need to make because all of the times we need to put all 3 Attributes (i.e. Business Model / Digital Assets / Digital Assets Features) together into consideration, instead of only considering 2 Attributes each time.
    2. (Business Model) 2 x (Digital Assets) 3 x (Digital Assets Feature) 4 = 24 Decisions. We call the product of the multiplication Carterisan Product.

    What Problem Patterns the Marketing Neural Networking Model Solves

    Enumerating all Possible Decisions Combinations

    The reason why we need to enumerate all the possbile decision combinations is that while Strategy means “decision“, to formulate a Marketing Strategy, covering all possible decisions comprehensively is as important as figuring out the appropriate answer of a single decision.

    The only way to enumerate 100% of the decision combinations is by enumerating all the Attributes and all Option Values of each Attributes, and multiplying them all together to become an Cartersian Product. In turn, there will be no decision combination missing out within the Model (i.e. figured out exactly ALL possibilties within the Model, no more and no less) , provided that there are no relevant attributes in the Marketing Neural Networking Model that are missing out, which we will discuss this “bug” in upcoming chapter.

    Automating the Decison Making procedures by computer or A.I.

    Remember in the old days (or even today without A.I) you learn digital marketing strategies by listening from the advice provided by the senior digital marketing consultant to the client. Every time when you were participating in a client meeting, you were impressed by how deep the knowledge ocean that the senior digital marketing consultant acquired that seemed he could non stop sharing his knowledge forever. You dropped down every single piece of know-how into a notebook and dreamed of that you might become him some day when you acquired ALL his knowledge, although you never know how “exact quantity” of “ALL” knowledge is.

    Even if luckily , you did the miracle and learned “all” the knowledge and become another iconic senior digital marketing consultant, your next generation will encounter the same problem as you did, which he/she needs to take notes and learn piece by piece starting from a blank paper.

    This inefficient resistant makes the knowledge transmission process extremely slow, just like what human beings did in the passed 7,000 years since mankind’s history. 

    Bear in mind that the example that we made previously in this session only describes 24 decision combinations , which accounts for a extremely tiny portion of reality which probably has 10 of millions of decision combinations, which is far beyond the processing power of a mortal within his lifespan.

    In order to have a systematic way to record all the Knowledge Nodes and the relationships amongst the Nodes, the Neural Networking Model is a perfect candidate to provide a paradigm which turn reality into a conceptualised mathematical model to do the job , not only by human beings but also by computer, which it’s compute power can dramatically speed up the pace of learning by decade of years, and letting processing ALL decision combinations to be an mission possible.

  • Relationship between Human Learning and Data Structure

    Abstract

    Human learning is a complex and on-going process which describes the interaction between the human being and the environement surrounded them, and how they interpret the data and formulate the model to project the world. While it’s worth a whole book to explain it, in this article we only extract the part which related to the Data Structure.


    Definition

    Data

    First of all, Data is nothing about computers or digital. long before the invention of computer or any digital devices, data exists.

    Allow me to explain Data with an example. Some day 5,000 years ago in Mesopotamia, a Sumerians named Adamen brought a sheep to the market for sale. While he stood in the street for almost 6 hours, finally he found a richman who was really going to buy his sheep for 50 Shekels. He was happy and thought that if he could sell all the sheeps he possessed , which was 10 sheeps , he could have financial freedom. So he left the market and thought of how to execute his plan.

    Immediately after he arrived home, he found it’s really hard for him to bring 10 sheeps from his home to the market. He was thinking that instead of bringing the entire sheeps to the market, is there any way that he can only bring part of the sheep? In turn, he cut off one nail from each of the sheep, and brought these 10 nails to the market to make people believe that he possessed 10 sheeps.

    In this story, the nail of the sheep is acting as a Data to denote the underlying material object – the sheep

    You may wonder why he doesn’t simply use a paper and write the word “sheep” on it. Please bear in mind that paper and words were not invented at that time. 

    Of course, when time goes by, when the word and paper were invented, people like Adamen can simply use a paper to write down the wording “Sheep” to denote the underlying material object “Sheep”. No matter how , the function of Data, to point a word (or symbol , or glyphics, or character, or sound, or pronunciation, you name it.) to an underlying material object, is always the same.  

    That’s the beginning of the story of Data.

    Data Structure

    A data structure is a concept for running a database. Data structure is a specialised format for organising, processing, retrieving, and storing data. It defines how data is arranged in a computer so that it can be accessed and updated efficiently. There are mainly 2 types of Data Structures:

    Relational

    In common English for easy understanding, you can regard Relational Data Structure as a 2-Dimension table which use both Column and Row to co-ordinate a Value (i.e. we call it “Cell” in MS Excel or Google Spreadsheet). It mainly focus on the relationship between the attribute (i.e. the Column Name and Born) and the attaching object (i.e. the Table Ancient Celebrities) itself.


    Example of a Relational Data Structure (i.e. a Table)

    Ancient Celebrities #NameBorn in Job Title
    201PlatoB.C 429Philosopher
    202AristotleB.C 322Philosopher & Mathematician
    203Alexander the GreatB.C 356King of Macedonia
    Ancient Celebrities Table

    Non-relational

    In common English, you can regard Non-relational Data Structure as a tree (or hierarchical) list which uses Node and Edge to coordinate the Value. Unlike Relational Data Structure which focus on the relationship between the attribute and it’s attaching object, Non-relational Data Structure focus on the relationship (i.e. the Edge) between Object (i.e. the Node) and another Object (i.e. another Node)


    Example of a Non-relational Data Structure (i.e. a Tree List)

    • Plato (Node 1)
      • Aristotle (Node 2)
        • Alexander the Great (Node 3)
    Teacher – Student Tree List

    whereas , there are 3 Nodes in the Tree List. Although it is tempting to think that there only 2 relationships (Edges) between the 3 Nodes, in fact there are 4 relationships (Edges) in among:

    1. Plato (Node 1) is the teacher of Aristotle (Node 2)
    2. Aristotle (Node 2) is the student of Plato (Node 1)
    3. Aristotle (Node 2) is the teacher of Alexander the Greate (Node 3)
    4. Alexander the Great (Node 3) is the student of Aristotle (Node 2)

    4 Edges instead of 2 Edges because the direction of the relationship (Edge) does matter.


    How Human Learn based on Data Structures

    Let’s start this topic with a question asked from your friend:

    Hey, who is Aristotle?

    To answer this question, you may reply him in English as below:

    Aristotle is ancient philosopher and mathematician who was born in B.C 322 , whom is the student of Plato as well as the teacher of Alexander the Great.

    While the answer above is exactly same as what we will speak in daily English, this sentence is informative enough for anyone to have a brief understanding on who Artistotle is. Nevertheless, even though you are very good in English, compared with the time spent on reading the Table and Tree List , you may spend more time to read through the English sentence word by word.

    On the contrary, while you are reading the sentence, in fact what you do to comprehend the sentence is by idetntifing the attributes of Aristotle (e.g. Born in , Job Title) , as well as the hierarchical relationship (i.e. Edges) between Plato (Node 1) and Alexander the Great (Node 3).

    By presenting in Table and Tree List format, only with few hours of practice, anyone can comprehend any articles much faster than simply reading in plain English format.


    Human Learning Behavior as an Adaptive Search

    However, the story of human learning does not end just like this. Back to our example, while your friend seriously listened to your reply, although he realised that Aristotle is the student of Plato, you could never imagine he didn’t know the meaning of “B.C.” and he asked you about what is “B.C.”. 

    “B.C.” is an acronym of “Before Christ”. It is a dating system which is used to denote any year before the birth of Christ. The opposite of “B.C.” is “A.D.”, which stands for “Anno Domini”, which is a Latin phrase meaning “In the Year of Our Lord”. The year of 2024 means we are in A.D. 2024, which we normally will skip the terms “A.D.” as it is by default.

    Having Replied by you, now your friend knew the new knowledge regarding the dating system B.C. and A.D. you can simply turn the plain English into the Table and Tree List format as if we have done before as below:


    AcronymWord StemLanguagePresenting Year
    B.CBefore ChristEnglishBefore Christ Born at Year 0
    A.DAnno DominiLatinAfter Christ Born at Year 0
    Dating System Table
    • Dating System
      • B.C.
      • A.D.
    Dating System Tree List

    In fact, every single concept (I called it Knowledge Node) will always have its own attributes as well as the relationships (i.e. Edges) between other Nodes.

    Imagine if your friend is a 5-year old boy and he knows very little about what you said (and even about this world!) and he is going to ask you almost every single word in your sentense like this:

    1. Who is Aristotle
    2. Who is Plato
    3. Who is Alexendar the Great
    4. What is B.C.
    5. What is A.D
    6. What is Latin
    7. Who is Christ
    8. What is Anno Domini
    9. What is Macedonia
    10. What is Philosopher
    11. What is Mathematician

    If you turn all these 11 concepts (i.e. Knowledge Nodes) into Table and Tree List format, you can imagine the Data Structure will resemble the image below:


    This is a typical Adaptive Search pattern which someone need to “search for what he wants to search for“, and in turn forming a Knowledge Graph which a smart person like you will quickly realise that you can (or need) to add an infinite number of Nodes and Edges inside the Graph in order to learn something. The more Nodes you add into the diagram, the more attributes will be derived. And each attribute of a Node can become a new Node.

    And that’s exactly how the data structure behaves during human learning.

    Remember the previous example when you explain to your friend who Aristotle is. In order to make him understand who is Aristotle, he need to acquire the foundation knowledge which made him diving into 4 level of Nodes as below:

    1. Level 1 Node
      • Ancient Celebrities
    2. Level 2 Node
      • Dating System
    3. Level 3 Node
      • Language
      • Job Title
    4. Level 4 Node
      • Country

    You can now sense the challenge of how a human being learns a new concept which he will get lost in the maze very soon after he has no idea how many levels he should dive into in order to comprehensively understand a single concept in a topic (i.e. a Knowledge Domain). And the Knowledge statedion in your brain will finally distribute in this way:

    Nevertheless, don’t be upset by the truth and we should (and already have) found a “Map” to navigate us in this knowledge maze.

    Finally , let’s back to Aristotle again and end this topic by an citation from him which describes the problem being suffered during human learning:

    The More You Know , The More You Realize You Don’t Know


Diamond Digital Marketing Group