Reflecting Back On Choluteca Bridge!

I have personally never been to Honduras , but there is a bridge on Choluteca river ( or was ) by the name of Choluteca in Honduras , Central America which has caught lot of attention since last year as COVID started to rage wildly across the globe.

source – google

The image shows a 484-metre-long bridge on the river Choluteca located in Honduras, Central America. In 1996, the government had some brilliant architectural minds construct the bridge to withstand storms and hurricanes. Two years later, Atlantic’s second-deadliest hurricane struck Central America. Hurricane Mitch caused over 11,000 fatalities in Central America, 7,000 in Honduras alone. There were 75 inches of rain in four days, which was an equivalent of what the country would normally receive in six months. The Bridge stayed put and maintained its pride. While the Hurricane wiped away roads and wrecked bridges, The Choluteca Bridge emerged as the last-bridge-standing, that too in an impeccable condition.

Ok so what is the issue here ?

  • The hurricane swept away the roads leading to the bridge and rendered them as good as nonexistent!
  • Heavy rains caused the Choluteca river to change its course, creating new channel which was then flowing parallel to the bridge!

Therefore, the bridge lost its initial purpose. It then became a ‘bridge to nowhere’ , only to be connected back to highway around 2003.

For me whenever I look at the above , and reflect , I find multiple thoughts that cross my mind and different readings that I took from following books :

Both these books have many elements that will help you resonate on two aspects in simple terms

  • Uncertainty is the name of the game . a year back we talked about 5 year plans and couple of years back did strategic offsite huddles to frame our strategy but now planomics can only be as good as long it survives the next moment ! From Developed to Developing .. nobody is prepared enough to handle current COVID crisis. We are all reacting in moment to take us farther than what we are today !
  • Systems Thinking is evermore important skill to have in order to create better viewport of the solution we may have in mind ! Events like COVID require a systems level thinking to see through challenges that create better feedback loops and broad spectrum solution design !

I did like to leave my readers with the thought below . See it in above context . We all need to become better at saving time and managing in constraints !

A good plan violently executed now is better than a perfect plan executed next week. – George S. Patton

Leading Through Crisis – Shackleton Expedition & COVID

It has been six months since I changed my job and moved to Bangalore. Shifting in COVID times was itself a big planning task and then emotions of leaving city of dreams Mumbai ! We squeezed with family between two inter-state lock-downs and have been home confined since last one month ! It also has seen some torrid times for our country , where COVID has raged a war against humanity and we have been all fighting our own battles at different levels.

When I compare this to last year we were all making an effort to stay connected , help each other by making all sorts of home-made food and reinventing ourselves…compare this to what is now , we have all been brought to ground , fighting hard to hang-in there emotionally , physically and bodily ! COVID this time has touched our close ones in unfortunate ways and caused a level of trauma that cannot be described in words. As I say Time itself has not got enough Time to overcome losses around us !

Many of you would recognize one part of title and be intrigued to know more about Sir Ernest Shackleton and his mention in this post. Sir Ernest Shackleton was a polar explorer. SHACKLETON is a role model of leadership in crisis , even though his expedition judged by its initial objectives, was a colossal failure. His ship, the Endurance, never reached Antarctica. None of its 28 crew members set foot on the continent. The journey strained Shackleton’s finances to the breaking point, and at the end of it, in late 1916, its fame-seeking protagonist found his accomplishments eclipsed by the horrors of World War I.

Shackleton’s journey was amazing. The early 1900’s was the age of polar expeditions. It was common for men to die during the journey but Shackleton would not accept death. He used a systems approach to create a strong team that could handle the difficult situations they facedShackleton’s ability to respond to constantly changing circumstances was a great testament of crisis leadership. When his expedition encountered serious trouble, he had to reinvent the team’s goals. He had begun the voyage with a mission of exploration, but it became a mission of survival. Sir Ernest Shackleton is always remembered as a man for tight spot when it came to providing leadership in adverse settings and crisis repeating itself one after the other.

Ernest Shackleton’s failed quest to reach the South Pole is still a management tutorial in how to face repeated crises. The crew of his ship, the Endurance, was photographed in July 1915 while trapped by an ice floe. Credit…Frank Hurley/Scott Polar Research Institute

While today’s coronavirus crisis doesn’t involve shipwrecks or glaciers, leaders throughout the world are navigating through unprecedented challenges. This capacity is vital in our own time, when leaders must often change course midstream — jettisoning earlier standards of success and redefining their purposes and plans. This is required at all levels of community living ranging from living as a family , neighborhood , corporation , city , state or country.

My mum contracted the virus a month back and since then it had been tough times as family with news now being good around us. Six hourly counsel for weeks and taking course of action with my elder brother on ground to pull our mum out of this has been at my level the smallest example of trying to hold the fort in crisis and working between today / tonight mode. As much we think we are prepared to handle crisis , it always exposes fissures that force us to re-imagine our response. You can never be prepared for the worst.

During Endurance expedition, Shackleton’s management was crucial in saving the lives of the 28-strong party after the ship was crushed by ice. He was an inspiration who instilled a belief that the marooned men would survive and get home. It was a simple message that Shackleton frequently reinforced to ensure the men never lost sight of the goal – safety and survival.

I have made some under-pinning thoughts for us to react as leaders but there are simple lessons of leadership also that we can put in practice to create an environment of self-restrain and teach our generations on how to handle crisis like COVID now and in future.

Shed Privileges Exercise Equality

Shackleton instinctively understood the importance of teamwork, and threw a protective cloak around his men. All were treated equally and he took particular care with anyone struggling to cope. When winter clothing was distributed, Shackleton ensured the crew was supplied before the officers. Everyone shared supplies, sailors took scientific measurements and scientists would share cleaning duties with the crew and with Shackleton himself. In such times we have to operate from high moral grounds to ensure that we do not isolate larger society by exercising privilege’s at smaller levels.

Preach What You Can Do

Talking about theoretical aspects , sharing un-verified information and causing over-loads during crisis can be very difficult. If you do not believe in doing something yourself , do not pass same message to others. Shackleton never assigned any task to his crew , which he would not do himself. Home chores have to be done by everybody , it is not one person’s job.

Routines Are Important

Having a 40-hour work week is not considered routine. There is much more to life and , one needs to ensure that time and space are given due respect to keep brain active , fresh & alert . To maintain morale, Shackleton had the crew exercise on the ice, play soccer, and participate in indoor games. After dinner, the sleeping quarters in the hold — which they mockingly called “The Ritz” — were used to stage parties, games, and some other unusual competitions. Establishing Routines are important to stability.

It is a Marathon

If we continue to push our thinking limits that this is over tomorrow , we are going to set ourselves for false optimism and expectation. For us humanity here is in for a marathon , so try to carve out some personal time to recover every day because this is not a sprint, it’s a marathon. Remember my statement around today / tonight.

Shackleton believed in his mission and in his team. His optimism was contagious. He intentionally made decisions to inspire optimism in his crew. He was enthusiastic, clear in his vision. He encouraged singing, games, fun antics, and other merriment during the expedition. Similar to this as families and companies we are in this together and we should play our part in creating our own definition of an engaging environment that allows us to function sanely with maturity! The quote from Sir Ernest Shackleton on his return should inspire us to preserve what we have and put safety first !

On returning home, his wife Emily asked Shackleton why he had turned back with the Pole in sight, he simply said:

“I thought you would prefer a live donkey to a dead lion.”

What comes to your mind when I say JUNK!

The blog focusses on how we are applying Exploratory Data Analysis(EDA) to establish insights with various initiatives at RecipeDabba . We use python libraries like pandas-profiling , DTale to generate some of these analysis. One will find the read interesting and how things have gotten shifted during COVID times !

OK…as per dictionary the literal meaning is something which is discarded and has no or extremely low value.

Aha! Surprisingly while this definition fits well when it comes to Junkyard but not so much when it comes to junk food.

Junk food on the contrary is much loved and a go-to food for many. Makes me wonder why? Why despite a food shouting loud and clear that, Hey dude! I am not good for you we still will go head over heels for it.

Anyways, I will not roast it more, since now you get the drift already.

Our work at Recipe Dabba is majorly focused around promoting cooking as life skill and healthy eating as lifestyle for kids. And as part of this endeavor, we have been successfully running this specially curated program called 21 Days No Junk Food Challenge since 2019 April. In here we work around few nudges and simultaneously educate kids (aged between 5 to 12 years) around food choices and with help of parents monitor their eating pattern for 3 weeks. The idea is to motivate children towards better food choices and lots of things around this. So, while we did some 6 seasons of this fun based, habit formation challenge, here are few findings purely around the kind of temptations participants had during these 21 days period.

  1. Majority of Junk food temptations were under Readymade Snacks and Desserts. These could be things like Chocolates, Cookies, Oreos, Ketchup, Chips, Candies, French Fries etc.
  2. COVID-19 time seasons (Post Feb 2020) saw a major drop in outside junk food like Pizza, Burgers, Vada Pavs, Samosas etc. , however the packaged foods like Chocolate, Cookies etc. were still present in the list.
  1. Again, when comparing the Pandemic and Pre-Pandemic times, the drop was there in consumptions of chocolates as a major chunk of these were also coming from birthday parties, schools, day cares, activity classes or other social gatherings which stopped during COVID-19 seasons.
  2. The temptations for carbonated drinks, creamy cakes and pastries also were much controlled during COVID-19 run season.

These findings though are only from a sample of 100 urban kids but are powerful enough to infer that it is not impossible for kids to stick to a homemade and healthy food unless they are pushed into temptations. These temptations are mad-made and mostly around because of our social structure. Also, many times food like ketchup, cookies and likes are always present at are home and sometimes they are our food of convenience over anything else. 21 Days No Junk Food Challenge surely works in a controlled environment, but it does help us make parents aware of how small changes can make larger impacts in long run. Controlling temptations is not easy for even adults and these are not even teenagers we are referring here.

Some of the ways how these worked towards controlling these temptations are.

  1. Working and agreeing upon healthy alternatives which parents provided them with.
  2. Asking more questions about how to manage these temptations.
  3. Taking one day at a time with a promise to practice control.
  4. Working on small portions, if at all the temptations were stronger.

To sum up, changes aren’t easy and when it to comes something we have been calling out our comfort food for long, it becomes all the more complicated. Young kids who came into the world only looking for mother’s milk for sure are not to be blamed for the choices we got them into.

Junk or processed food can’t be removed 100% from our systems, courtesy to the lifestyle we have chosen. However, it certainly can be reduced to a great extend in order to increase the proportion of the healthy food. After all, while everyone eats healthy, all what makes the difference is how much unhealthy are we eating too?

8+ years & moving on…

I joined Cimpress ( then Vistaprint ) as Head of Technology in 2012 . I was excited about the opportunity because of the following three reasons

  • It was greenfield meaning I will be choose my team
  • It was in e-commerce space . I had never worked in that space
  • It was Indian market

This was compelling enough for me to embark upon this journey and make a difference. I was hired by Bernie Barbour & his fellow pals from Europe Engineering groups. Bernie then was leading a team of committed people from Vistaprint in setting up new operations in India post acquisition. When I say new operation it implies setting up whole new business along side plant operations in personalized print space using Mass Customization stack available at Vistaprint!

Since then Bernie [ now Head of Mass Customization Platforms(MCP) at Cimpress Technology ] has been part of my professional life like a constant. While I write this , you will find the equivalence of this in E = mc^2 (German-born physicist Albert Einstein’s theory of special relativity that expresses the fact that mass and energy are the same physical entity and can be changed into each other). I have been lucky to have this as coincidence because it is always tough to find such long time partners as an individual , team member and leader within a company.

Bernie & me !! love Boston !!

I contributed and led the technology and product landscape for Vistaprint India technology operations including production tech working on different aspects of e-commerce , supply chain , infrastructure. Given the success in India , the pattern was repeated in Japan , & I was called in to hire as well groom the technology team in Japan that could work independently for Vistaprint Japan. The journey every year was exciting doing different things in India & Japan in space of e-commerce & retail store formats . It was all new for me. When I joined Vistaprint in 2012 , I had always been working for global companies but Vistaprint was becoming a global company not from the sense of having offices in different parts of the world but actually doing business in different parts of the world with localized manufacturing. Next stop was China where I got ability to sit with different stakeholders to look at the market and see how we could integrate mass customization in retail store format with marquee brands. First 4 years were a great learning experience for me. I was excited about building my culture map at global scale thanks to Vistaprint. During these 4 years Bernie & I kept crossing paths bringing engineering and expertise to the region all across time zones starting from US to Asia Pacific!

Images are tell-tales and so are the above one’s through my eventful journey of setting up retail store in Pune for Vistaprint India to Japan operations. Core Team of Vistaprint India led by Nilesh Parwani – serial entrepreneur , whose start-up was the reason India happened to the Boss doing his inspections in Japan 🙂 . I picked great friends in India and across the globe like Chirag Bhuva , Sandeep K , Jitendra Dadhich , Mahesh Shenoy , Rene Kuipers , Conrado & Saigni Ramesh! Met some fine technology leaders like Maarten , Jim , Satish , Marco & Melissa !

Late of 2016 , I started to shift gears at Vistaprint , many acquisitions had been made and we were moving aggressively towards a platform hypothesis as well we transformed into what I was part of that is Cimpress. Core tech needed to expand rapidly and there were a increased desire to start looking at rethinking e-commerce stack across various businesses to speed up out ability for a vertical integration and create network effect across multiple markets.

Again Bernie came into picture and this time the challenge was to create a ground up engineering team that can help create a new multi-tenant e-commerce platform which help us transform the businesses and move them to more modern day world of API-first / data driven architecture. This started my next 4 years time travel at Cimpress. I started to work very closely with businesses In Europe and my attention shifted from Asia Pacific to European businesses. From building the team in India to working a new platform , developing hypothesis and launching it in UK for Tradeprint was a a crazy ride for people around me!

Picked great buddies like Dan Wakabayashi , Kara H , Ashley , Markus T , Michael T , Ryan B , Vikram , Nirav , Cory , Mukul , David Goldman , Rod Scrimgeour , Alan Livie , Stuart Ebdy , Steven Hammond , Ben Hudson , Christian Maas , Henk & Galina. I continue to have great personal relationships with each one of them ! Many more in India like Ameya s , Gurinder Singh , Shekhar S , Sumit S , Himaunshu , Gaurang , Doede , Vinay , Dhaval , Aman , Rohan S , Samyak M , Ankur T , Amit P , Kunjal , Priyanka , Deepa , Prasanna , Rohit , Sharlet , Yogendra , Chandra , Vishwas , Pranav P , Tanu R, Ankush K, Satish , Prasenjit , Hardik , Manoj , Ramya , Vedant , Prateek … there are 100 plus great people from whom I have learned a lot from our India Engineering Centre across Mumbai and Bangalore !!! It is hard to enlist everybody but I have huge respect for every individual who has worked with me !!

Many such memories , events and occurrences , also gave me the ability to run for a marathon in Paris ! ( never ran in my life before now I run three times a week ) , all inspired by Kees Andres , whom I revere and respect a lot for astute business sense and eye for correct details.

Over the course of last 8 years , I have built more than once teams suited to different purposes from running business centric technology to e-commerce , marketing and storefront tech every time bringing on amazing talent which is smart , level headed and come with “get shit done” moto.

Cimpress Technology Leadership Team ( core & extended )

My lessons learnt from famous book Making of a Manager are here:

Your job, as a manager, is to get better outcomes from a group of people working together.

The first big part of your job as a manager is to ensure that your team knows what success looks like and cares about achieving it.

Your role as a manager is not to do the work yourself, even if you are the best at it, because that will only take you so far. Your role is to improve the purpose, people, and process of your team to get as high a multiplier effect on your collective outcome as you can.

Today, my job looks very different than when I started. Every time I’ve given a piece of it away, I’ve discovered that there was ever more to take on. As long as you continue to be motivated by your purpose, as long as your aspirations extend beyond what your team is currently capable of, as long as you can see new challenges on the horizon, then there’s opportunity for you to have more impact. Often, this means doing new things that you’re not very good at yet.

The act of constantly trying to replace yourself means that you create openings to stretch both your leaders and yourself. Right ahead is another mountain that’s bigger and scarier than the one before. Everyone keeps climbing, and everyone achieves more together.

Leadership is a quality, not a job

& none the least many of my famous quotes given on our printing platform as gift by my AWESOME team !

Cimpress Technology & Cimpress India provided me right level of autonomy to try new things , create new software , run technology organization and making me a Global Software Engineering Leader! I can only be thankful! I hope I am able to create success and get same environment in different context as I reset to paint the canvas again !

As I look back standing now in 2020 , a strange year for entire world! I do not want to say much but only be grateful to God for providing us spiritual strength which is helping us endure and keep moving forward.

F.A.S.T Approach To Product Strategy

A few weeks back I wrote a blog post on how you can bring technology and growth more close to realization by adopting 5S Tech Strategy The blog post talked about taking a 5S approach towards product development that could help create a more robust & user centric product. I am extending my thinking now at strategic level to make an attempt at addressing the problem we face today :- How to counter the rapid change happening around us.

In so many years , the only thing I would ever speculate would be about an outcome of a cricket match or weather in cities I would have visited , but that still came with certain level of confidence; Today policies , businesses & impact on people has gotten reduced to a level of speculation never seen before! Feedback loop that drives future has shortened and is demanding faster reaction time.

In this blog , I will talk about the F(lexible) A(daptable) S(wift) T(ransformational) approach to Product Strategy. Each of the four pillars have been described by taking examples that are recent and defining in how they are impacting lives & society.

Flexible

Pandemic has shown us that flexibility is a key attribute that any design will have to cater for future. If we do not carry that trait our ability to respond will be constricted.

Health & fitness as a product is currently driving the Indian urban market. People now are willing to spend a good amount of their disposable income towards gyms, health devices like Fitbit and many more. The running events or rather the Marathon events are slowly gaining popularity in India, especially in Metros. Number of professional runners in India who train themselves through out the year to participate in Marathons is increasing by triple digit figures year on year.

But due to pandemic this activity has been drastically , where the whole joy of running in groups , meeting up and combining social activity with physical sport has gone for a toss. So should they stop organizing events ?

The obvious answer is NO , most of these event management firms have shifted to a virtual format where-in they are still able to charge 50% of registration fee than a normal event and provided for a simple mechanism to upload results post your run. They are trying to be flexible about where you run , when you run and how you measure performance.

Key Take Away : The product should be Flexible enough to continue to cater to its addressable market and foster engagement with its user base

Adaptable

Breweries and distilleries will make the switch from booze to hand gel as the government relaxed manufacturing rules in a bid to make up for shortages of alcohol-based disinfectants. Credit: Stock image/Pixabay

In late March , Belgium gave the go-ahead to breweries, distilleries and other recognized alcohol-makers to exceptionally produce disinfecting hand gel as demand surges due to the coronavirus (Covid-19) pandemic.

The Rubbens Distillery was one of the first businesses to cater to a new pandemic-related niche — making hand sanitizer in addition to gin. The pandemic has forced many European businesses to improvise. This Belgian gin distillery now has a popular line in hand sanitizer!

More examples across Europe reflect upon how the crisis forced thousands of companies to adapt — either to stay afloat, or to cater to a new pandemic-related niche. In France, perfumeries made disinfectant. In Denmark, a gourmet restaurant now sells only burgers. Elsewhere in this Belgian town, a lingerie manufacturer pivoted from corsets to COVID, and now produces face masks.

Key Take Away : The product / solution should be Adaptable to serve unrelated needs emanating from its customer base.

Swift

Swiftness to respond , is a great attribute to have. We often see inflexibility that comes when using different technology stacks and it becomes difficult for engineering teams to respond swiftly to changing market dynamics and retain market share. If you look at the new wave of platform hypothesis you would come across the following terms more often than ever :

Microservices based, API-first, Cloud-native SaaS and Headless.

It is agile and nimble, always up to date approach that can help provide swiftness to your solution if the underlying platform is able to support the above tenets.

Whilst above is an example from how digital needs to transform and respond to changing business strategy. The following example is from manufacturing where 3D-printing platform have countered supply chain disruptions enabling on demand solutions for needs ranging from personal protection equipment to medical devices and isolation wards. the digital versatility and quick prototyping of 3D-printing has enabled the rapid mobilization of the technology and a swift response to emergencies in a closed loop economy.

An Italian engineering company, Isinnova, came up with a 3D printable respirator parts for free to help keep coronavirus patients alive , called a venturi valve, it connects to a patient’s face mask to deliver oxygen at a fixed concentration. The valves need to be replaced for each patient. The biggest supply crunch is with ventilators, but respirator parts like the ones in Italy and even simple nasopharyngeal swabs for testing are all in short supply. Meanwhile, the technology of 3D printing, which allows digital design of parts and the “printing” of them off a machine that creates them layer by layer, is ideally suited to emergency manufacturing because it is fast, cheap and can be done without a big factory

COURTESY OF ISINNOVA

Key Take Away : The platform / solution should be enabled to provide Swift response to the challenges that are thrown by macro factors governing the market.

Transformational

With above tenets in design , the product offering needs to be truly transformational to disrupt the market. May 26th was historic day in spaceflight era. It was a start of new journey. For the first time ever on this day , SpaceX launched a crewed mission to the International Space Station . NASA astronauts Bob Behnken and Douglas Hurley took this journey on Crew Dragon spacecraft and shepherded it into a new era of space exploration.

At $1.7 billion dollars, SpaceX’s Crew Dragon vehicle is the least expensive spacecraft developed since the Mercury Program, which, adjusted for inflation, cost the agency $2.7 billion!

The SpaceX Crew Dragon spacecraft for Demo-2 inside the company’s hangar at NASA’s Kennedy Space Center.

Another fun fact is that the astronauts Bob Behnken and Doug Hurley drove to the launchpad in an electric car manufactured by Tesla, another of Musk’s pioneering companies, foregoing the “tin-can” Astrovan that has been the traditional crew transport since the US began sending humans into space in 1961 🙂 .

Self driving cars and reusable space rockets , we would have never imagined to move out from prototypes to production systems , but that is a reality now and maturing everyday!

Key Take Away : For a product to truly disrupt the market it has to be Transformational unless that happens competition will catch on and take over.

5S Tech Strategy

Giving some break to my Tech Hacks writing and getting back to strategy again ( it is about switching gears all the time !) .

I have been working through the years on many initiatives and they have varied in scale as well complexity but there are common pieces to the over-all strategy that are very critical for making Technology work towards delivering Growth.

I have put the tenants through a visual that will help connect the dots along side definitions which will help build the context. Let us go over the definitions one by one:

Technology

In today’s world this is bedrock for any industry and/or strategy. Be it pure play tech idea or tech enabled , the word tech seems to glue itself with firm roots into the foundation of any business model

Potential

Potential needs to exhibited by using technology has grounding principle. Unless we architect and design products , services and/or solutions in a manner that they can demonstrate potential value , the Technology lever does not effectively come into play.

Engagement

Producing endlessly products , services and/or solutions is not a great idea and hence engagement with potential users is of great value. The earlier they get integrated into feedback cycle the faster you are able to generate feedback to either go ahead or trash the concept. Sometimes , the potential users may get confused with the value proposition but showing persistence in providing answers to their relevant problems via engagement helps to solidify over a period of time the connect with the potential.

Growth

Without Growth there is nothing that can be achieved. The subtle difference between output and outcome lies in how well are you doing on your growth hypothesis. Engagement provides for evaluation of potential , Growth makes it real!

Scale

For growth to operate at stable levels and maintain a steady ship , it requires Scale which has to be provided by Technology. The Scale is driven by

  • Infrastructure
  • Inversion of Control(IOC)
  • Separation of Concerns(SOC)

Leave enough on table to help drive growth to next level without creating bottleneck.

With above explanations lets look at the 5S on how it connects the dots between these elements and create a feedback loop that can help drive right objectives for the Technology Strategy.

  • Technology needs to Show Potential
  • Potential needs to Steer Engagement
  • Engagement Shapes Growth
  • Technology Supports Scale
  • Scale Sustains Growth

Obvious Benefits For Teams

  • The connected 5S strategy becomes very self-explanatory in defining how we have to rally our teams to focus on creating value from the technology
  • The teams can be given clear goals that are aimed at working towards a more coherent strategy
  • Create iterable development model that can operate with constant feedback loops
  • From business or customer standpoint , the value drivers are clear on how potential can be monetized

I hope these insights are useful for the next big what you might be planning and as always for any feedback , questions or comments please leave it on the post!

Where Is My Last Name in CRM?

I have been recently talking about my tech hacks to solve day-2-day problems in technology using different programming approaches. This blog post is about cleaning up the name field within a customer resource.

I was given this challenge in context to dutch language and asked if there are remedies beyond usual grep or split commands in order to derive first name versus the last name from a field that currently only holds the full name with the last name field being blank!

It was an interesting problem to look at as you could leverage many approaches like deploying Mechanical Turk to specialized cleansing services but , I chose to go a different way .

I used following packages in python to write a small code in order to get my results:

  1. Probable People – An open source package maintained by Datamade.
  2. SpaCy –  An industrial strength Natural Language Processing(NLP) package

What is Probable People?

probablepeople is a python library for parsing unstructured romanized name or company strings into components, using advanced NLP methods. This is based off usaddress, a python library for parsing addresses.

Try it out on our web interface! For those who aren’t python developers.

What this can do: Using a probabilistic model, it makes (very educated) guesses in identifying name or corporation components, even in tricky cases where rule-based parsers typically break down.

What this cannot do: It cannot identify components with perfect accuracy, nor can it verify that a given name/company is correct/valid.

probablepeople learns how to parse names/companies through a body of training data. If you have examples of names/companies that stump this parser, please send them over! By adding more examples to the training data, probablepeople can continue to learn and improve.

What is SpaCy?

Spacy is an industrial strength NLP written in python and more can be fond on the site , it might not be worth me writing more about it here due to its popularity.

Whilst both packages provide powerful machine learning approaches to re-train , train and evaluate your machine learning model in context of the problem , I have taken an OOTB(Out Of The Box) approach to directly ingest data with available corpus and probabilistic parser.

Approach

In terms of approach , I have used a pipeline architecture where the same data is send across to both libraries and then reconciled for presentation in the output. In simple terms I have used CRF(Conditional Random Field) approach of ProbablePeople & Named Entity Recognition(NER) from SpaCy to construct a pipeline to achieve my objective.

Simple Workflow For Creating a Structured output for name parser

Following are some basic code snippets to help you understand simple workings within the code and assemble your own output.

#Installation Commands 
pip install probablepeople
pip install spacy
pip install xlrd
pip install pandas
...
#Using dutch corpus for spacy
python -m spacy download nl_core_news_sm
...
#import
import probablepeople as pp
import pandas as pd
import xlrd
import csv
import os.path
import spacy
from spacy.matcher import Matcher
import nl_core_news_sm
...
#load corpus
nlp = nl_core_news_sm.load()
...
#Clean-up functions
def _removeNumbers(s):
    # Python code to demonstrate 
    # how to remove numeric digits from string 
    # using join and isdigit 

    # using filter and lambda 
    # to remove numeric digits from string 
    res = "".join(filter(lambda x: not x.isdigit(), s)) 

    return res 

def _removePunctuation(s): 
    # punctuation marks 
    punctuations = r'''!()-[]{};:'"\,<>./?@#$%^&*_~'''
  
    # traverse the given string and if any punctuation 
    # marks occur replace it with null 
    for x in s.lower(): 
        if x in punctuations: 
            s = s.replace(x, "") 
  
    # Print string without punctuation 
    return s
  
def _removeNonAscii(s): return "".join(i for i in s if ord(i)<128)

...
#NER Functions
def _nerExtraction(s):
    doc = nlp(s)
    entity_collection = []
    for ent in doc.ents:
        entity = {}
        entity[ ent.label_] = ent.text
        entity_collection.append (entity)
    
    return  entity_collection

#Parser Function Call
 try:
     ordered_text = pp.tag(value)
 except pp.RepeatedLabelError as e :
      .....

Using single field input we got one or many fields in a structured manner as below in a csv file! During the exercise it was also interesting to see that every name was not a person but ended up being a company name !

    'ner_entity',
    'ner_type',
    'crf_type',
    'PrefixMarital',    
    'PrefixOther',
    'GivenName',
    'FirstInitial',
    'MiddleName',
    'MiddleInitial',
    'Surname',
    'LastInitial',
    'SuffixGenerational',
    'SuffixOther',
    'Nickname',
    'SecondGivenName',
    'SecondSurname',
    'And',
    'CorporationName',
    'CorporationNameOrganization',
    'CorporationLegalType',
    'CorporationNamePossessiveOf',
    'ShortForm',
    'ProxyFor',
    'AKA'

Using the above flow , I was able to clean-up and provide a simple automation to a CRM flow that can then be converted to an API and be able to provide value using open-source approach.

If there is any feedback or comments do let me via post comments!

Light-Code Data Integration With Zapier

Recently I started sharing my learning around various experiments in area of no-code & light-code. Previously I had written a blog post on no-code Airtable Integration for data collection & processing. This post is about an experiment that I did few weeks back for a Proof-Of-Concept to create tickets and search for users in Zendesk [ to many this should not need any introduction ]

In order to complete my Proof-Of-Concept , I divided my processing into four major blocks:

  • Data Entry
    • Leverages a simple app created using React & React Zapier Form
    • Deploys to a very a easy to use static web publishing platform using surge.sh
  • Data Collection & Mapping
    • Created a workflow step to collect & map data using Zapier
  • Triggers
  • Data Persistence
    • Created a workflow step to persist the processed information back into storage of choice
    • or Can also inspect the data using RequestBin

The over-all architecture flow would like somewhat like this :

flow

In terms of account set-up , you would need trial or entry level account set-up with following

  • Zapier
  • Zendesk
  • Surge.sh
  • RequestBin

In this experiment the dominant design pattern is around Zapier. As we walk through various blocks you would understand how different constructs of a Zap as Zapier calls it are at play.

Data Entry

Using a default React App , I integrated the react-zapier-form package [ details are provided above ] . This package helped me to quickly integrate with a catch-hook that was defined within the Zapier workflow which allows us to post the data from the react form to the catch-hook as a json payload.

</p>import ZapierForm from 'react-zapier-form'
 
...
 
<ZapierForm action='INSERT YOUR HOOK'>
   {({ error, loading, success }) => {
      return (
         <div>
            {!success && !loading &&
               <div>
                  <input type='email' name='Email' placeholder='Email' />
                  <textarea name='Message' placeholder='Your message' />
                  <button>Submit</button>
               </div>
            }
            {loading && <div>Loading...</div>}
            {error && <div>Something went wrong. Please try again later.</div>}
            {success && <div>Thank you for contacting us!</div>}
         </div>
      )
   }}
</ZapierForm><p class="has-text-align-justify">

Once this react app is ready for deployment , I always love to move away from localhost Proof-Of-Concept to a deployment in cloud experience , so leveraging surge.sh came very handy to that effect. Surge has been built from the ground up for native web application publishing and is committed to being the best way for Front-End Developers to put HTML5 applications into production.

& you can deploy for free for starters 🙂

</p>npm install -g surge
npm run build
cd build
mv index.html 200.html
surge<p class="has-text-align-justify">

The command sequence does as follows

  • Install surge
  • Build your React App
  • Rename index.html to 200.html [ If we don’t rename index.html, everything will work fine, but in case you have client side routing routing (maybe with React Router) and we navigate to a new route and refresh the page, we’ll get a 404 “page not found” error. Since many React projects implement client-side routing, I have included this step. If you aren’t using client-side routing, feel free to skip renaming the index.html file. Read more about adding a 200 page for client-side routing on the Surge help docs.
  • Now run the surge command , that’s it !

Data Mapping & Triggers

Zapier workflow construction is pretty straight forward and one can proceed very swiftly through the integration. As you can see that there is node based code to capture the response and then post back on a URL , which I grabbed from RequesBin to post the data.

Once the whole process runs end to end you can then see that a post of the processed information is available at the HTTP hook . One can similarly send this data to a persistent storage using Zapier as it has integrated to many popular persistence mechanism including queues.

One of the things you would see in the workflow schematic image and the workflow itself is the use of a request_id that is generated on client side and then floated across the processing pipeline for us to create trace all along Zapier workflow and then be able to get the result look-up using the same request_id. I used the uuid package to achieve this piece of GUID generation.

I hope people find this useful for their day-to-day problem statement around workflow automation and it provides them some more options on how to move steadily through some integration problems of connecting with different Apps because Zapier provides more than 1500+ integrations that can be useful to automate many tasks.

If you have any feedback or comments post back on the blog . Happy Reading !

No-Code Airtable Integration

I have been using Airtable for quite sometime now at RecipeDabba where I work as part-time co-founder and coder ! My wife Rakshita Dwivedi , is the actual consumer of my work.

Almost every feature that is described by Airtable helps to power light weight tech-support that for my wife’s 21-day challenges in multiple formats that helps promote her healthy eating philopshy for kids. This became ever more significant during pandemic as she shifted bulk of her work online.

The diagram which you see below has been architected is powered using Airtable to create a workflow based architecture:

Schematic flow – copyright – Recipedabba

Airtable is a versatile cloud based sheet / database solution that helps automate large part of light weight process through

  • Multiple data types
  • Formulae
  • Blocks
  • Forms

I use all of the above in combination to do multiple pieces in the workflow like

  • Basics
    • Table Creations
    • Views
  • Data Grouping
    • Use of filters , group by
  • Analytics & Derivations
    • Roll-up fields [ very power full feature ]
    • Formulae to derive new fields [ this was another awesome feature ]
  • Data Entry
    • Forms
  • Blocks
    • De-Dupe Checks
    • Charts
Chart Presentation of Data

You can see above how the table data is quickly transformed into a basic chart visulization.

De-dupe block to remove duplicate enteries

An awesome block to remove duplicate entries from the system , with few clicks and configurations.

Snippets from the form view

Form rendition on mobile and desktop is very nie . Since we started to use this , the mothers [ who are primary collector of informaiton on behalf of kids who particpate ] , have found it easy to fill information and send it back to us!

Formulae and Applications

We can work on top of the data and apply many conditioanlities , thus allowing a flexible viewing of data in real time. Some of these things can take coding effort while connecting with analytics but , first level aggregation and analytics on daily basis has been very easy to perform in Airtable.

Overall for a upcoming or very small set-up Airtable . If you want to know more about how to do things in Airtable , feel free to ping me via comments and I will see if I can help !

Photo by David Travis on Unsplash

Habit Forming Platforms Part I

In my previous blog I had talked about Technology Evolution & touched upon how we have seen waves come in and go. I am converting that into a series of posts. First of the many posts related to Habit forming products & platforms. It captures my reflections around customer engagement mostly inspired from my readings of the book by Nir Eyal : HOOKED : How To Build Habit-Forming Products 

Nir Eyal is an Israeli-born American author, lecturer and investor known for his bestselling book, Hooked: How to Build Habit-Forming Products.  He teaches and has expertise in areas of psychology, technology & business.

Everybody you meet , there is always a common thread on talks of how to improve customer engagement. I also do realize that we are trying to make sincere efforts to improve it all the time but still keep failing at it ! It is important to retrospect why this is the case and why do we keep losing engagement from our customers , not making the value proposition compelling enough to keep their attention live and fresh !

When I started reading the book , it became very clear to me how forming habits is imperative for the survival of many products. The current pandemic is a living example where the consumption patterns and habits are rapidly shaping to create survivability  , continuity , & pivoting away from the pandemic.

Back in 2001 , when I joined the industry internet was coming out of womb and world was still about rich desktop applications. Some of us would remember Power Builder front-ends on Windows ! People at that time would expect the technology on web to be just like that , comparison point of totally then divergent tool sets ! there was expectation that web should replicate every aspect of experience there by underscoring the other tranformational impact of internet.  It was a struggle on how to manage this transition with scores of teams involved trying to get this right .  the books offers a set of learning on how such situations should be addressed from a platforms stand-point.

  1. Companies need to change behavior by presenting users with an implicit choice between old and new.
  2. Platform services should be enjoyable for the sake of its customers.
  3. Building Platforms that are marginally better than others will never shake the old habits of customers , with broad adoption base.

A classic paper by John Gourville , a professor of marketing at Harvard Business School stipulates that

Many innovations fail because consumers irrationally overvalue old while companies irrationally overvalue the new.

As we build platforms

  • We need to be better by  miles to even stand a chance for customers to get hooked to us.
  • If the platform and products require high degree of behavior change , then they are doomed to fail even if the benefits of using the new product are clear and substantial !
  • We need dramatic improvement to our software design or restatement of problem to break the users out of their old routines. 

Quoting another example from the book is that of the QWERTY keyboard , which was developed in 1870s ! Simply putting this layout prevented users from jamming metal type bars of early machines. Many people have tried to since then reinvent keyboards and relate it to better ergonomics BUT QWERTY still remains a standard. How does it survive ?

For a simple reason that there is very high costs attached to changing the user behavior and challenge the stored value for it within its customers. The whole process of relearning and adopting stands little or very less chance of success!

Business heads , platform architects , designers & developers need to:

  • Engage
  • Gauge
  • Modify

to make important decisions regarding how platform should be developed to trigger engagement for customers to get hooked to it.

We will talk in upcoming blog posts more around how to challenge and change the stored value in customer’s mind in order to increase likelihood of adoption. In the mean time , if you have any feedback or comments , please do share !