Appeal to all -
Join the "2017 CST-CTRMS Joint Scientific Meeting" in Halifax.
You can Register here: https://www.cntrp.ca/single-post/REGISTER-NOW-for-the-2017-CST-CTRMS-Joint-Scientific-Meeting
Please let me know <Sanjeet.Kumar@gmail.com> if you have difficulty in getting an entry pass for this event.
Register your Choice (for BC residents): http://www.transplant.bc.ca/Pages/Register-your-Decision.aspx
Thursday, July 20, 2017
This month I was invited by a partner to attend the 2017 Platform Strategy Summit at MIT Media Lab (Cambridge, MA) organized by the “MIT Initiative on the Digital Economy”.
This blog is the short synopsis of proceedings, with some judgemental inputs from my side. Therefore, nothing here is my IP. I am, however, writing a separate book – “Platform or Pipe-Dream” plans to be publish in Q4 2017.
What are Platforms?
Platforms are Interactions enabled by Infrastructure. They are environments, computing or otherwise, that connect different groups and derive benefits from others participating in the platform. Platforms externalize the value creation.
Platform Strategy - Primer
A platform strategy is an approach to entering a market which revolves around the task of allowing platform participants to benefit from the presence of others. It is not about creating technology infrastructure, rather about creating beautiful interaction between producers and consumers
Interaction design should be first… this is something eveeryone today knows... use “Interaction Design” to enable the “design of Infrastructure”. Goal is reducing friction on the way of Interaction. Frictionaless interaction yields Networking Effect. A positive Networking Effect is the mantra and key to success.
- Competition will occur at any level. The Business model must be prepared accordingly.
- Prepare for Viral-ity. (This is different from Word of mouth).
- Strtaegy must be targeted towards selling the "Reduction in Transaction cost".
Platform Strategy Mission Statement should be: Dynamic, borderless and collaborative; Universal source of information; Global ecosystem of contributors; Increases access and usability; offers users choices
Connect with Business Model
Business Model is not around creating Software and selling them… rather it is now about Data that gets created when software is used. Business model should be centered about monetizing those data.
"Level Strategy" is key. Competition will occur at any level. The Business model must be prepared accordingly. Model should be prepared for creation of new behavior, becuase Platform creates new market, and new opportunities.
Cost of expansion is virtualy Zero. Can be predicted easily... most of the time it is going to be linear. Understanding and guessing Inflection Point is key for modeling.
Another notable feature - Marketing cost not required, once the inflection point is reached
Model for Multisided Platform. Not only 2-sided platform
Build the Platform for Success
Platform features alone is not sufficient. Reducing the friction to connect is most important
Remember that the boundaries are alterable (Consumers can become producer and vice versa)
Possibly the single most important feature you will need is I call - "Learning filters" - similar (but not same) to personalization
Platform components - Toolbox, Magnet (attract), Flow (Matchmaker), Governance & Security
Seeding users is the most critical step to platform success. Goal is to reach inflection point
Platform gap happens when we say… Let us build the infrastructure… instead of saying lets us build interaction. Ensuring Consumer and Producer success. How to distribute focus on Stakeholders not only Shareholders.
Beware of the risk of building a monolithic system
Pipe vs Platform Strategy difference
Value Creation using “Platform Strategy”. Earlier it used to be through “Product or Pipe Strategy”
Pipe – A linear model, uses resources to compete for efficiency… At the other end is the Consumer for whom value is created. Pays using currency. Pipe enables processes. Process was created and made more efficient. Goal was to improve pipe process through efficiency and repeatability (for scaling)… increase quantity and quality for higher productivity.
Platform – No longer competes for resources rather provides an ecosystem through which others also (including us) can create value. Platform enables Interaction. Goal should be to increase Quality and Quantity of Interaction that is happening on the platform. Scalability is achieved using “Network effect”
Pipe to Platform Shift: a) Resource competition is not required. Rather an Ecosystem is needed b) Processes to Interaction
Also to note:
- Ecosystem is the new warehouse. You do not need to own everything, but we need to have everything in our ecosystem
- Liquidity is the new inventory
- Community management is new HR/employee
- Curation & Reputation is new Quality Control
- Customer journey is new Sales funnel
- Data is new Dollar
Tuesday, May 2, 2017
Most of us think that work life earning may not be sufficient for old age, or say, will have meager valuation in the next 20-30 years. On top, People are concerned about losing their jobs due to technology-assault and super-speed automation.
How much of this will prove to be true? To find this, I conducted detailed research and published few papers. This blog is synopsis of all.
Fast Forward: year 2035 - 2040
Two factors will impact our earning capacity (rather negatively):
- Rapid automation & Artificial Intelligence
- Socio-economic imbalances across geographies
Two factors that will reduce the cost of livelihood (positive effect):
- Democratization of Technology
- Government intervention - socialist economy
Automation and AI is no longer buzz word. Effects are visible across the board, will spread to every possible sector eventually. Despite best efforts by society champions (read politician), socio-economy divide will continue to hound masses. In anticipation, countries like Finland and Canada are running experiments to pilot the idea of "universal basic income" — the unconditional provision of a regular sum of money from the government to support basic living irrespective of employment status.
This blog is dedicated to the argument “Democratization of Technology” - which means, access to 'technology-endpoints' (products and services) will plummet abruptly, rendering it almost FREE.
As a Business Leader, understanding of this trend and its implications is important. Because, this is connected to Customer buying behavior and how it will transition in the next 10, 20, 30 years.
Cnsumer Spending Pattern
A recent UAE government data* as well as IMF report* (July 2016) show similar patterns in household spend distribution. As expected, housing takes the lion share at 40%, 13% on Food & Beverage, 10% on Transportation, 6% on healthcare, and 5% on Entertainment. In other words, about 74% of UAE residents' expenditures go to housing, food, transportation, health and entertainment.
*Ref - http://www.dubaichamber.com/whats-happening/chamber_news/dubai-chamber-analysis-shows-uae-retail-sector-growing-5-each-year-through-2017
*Ref - https://www.imf.org/external/pubs/ft/scr/2016/cr16251.pdf
Spending habits around the world tell a pretty consistent story — we tend to spend money on many of the same basic products and services. Based on IMF data from four large economies: USA, UK, China, and India, majority of expenditures are in these top 6 categories:
Now, think... what if the cost all the above 6 items plummet with time. There is compelling case behind this hypothesis, which I shall come back after next 2 paragraphs.
Technology Democratization and Price Plunge
It is not the first time, this will happen.
Example - Telecommunication:
IMF 2000 millennium data shows - on an average a typical household spent 7% of its income on communication. With the advent of WhatsApp, Skype, Hangout, Facetime etc. this is practically free for anyone carrying the most basic smartphone and internet connection. We democratized communication channels. Whether you are a billionaire or a poor on road, has same quality of communication service – FREE.
Example - Tuition / Education:
Google, Wiki, Stanford-web, MIT-web, Khan academy (and many similar) give 100% free access to top quality education content. 20 years back, quality education was luxury. Today numerous free tutorials are available on information highway with the click of button. We democratized access to knowledge.
One can think of many similar examples – On the consumer front, examples are photography, publication, entertainment, job market etc. that were accessible only to rich before, is nearly free now. On the business front, there are players who have democratized the once monopolistic nature of businesses – AirBnb x Hotel industry, Uber x Taxi.
In fact, as we speak… we are actually using more a million dollar stuff Free. We have taken them for granted.
This is How –
This is How –
See chart below. Most of us would have purchased these products and services some point in time. Those in 40s and 50s can relate better. Combined cost is nearing 1 million USD. Today every one of us are using same product and services – almost Free. So strange, in todays’ world we do not value these at all. Our expectations have changed, rightly so because in a democratic paradigm things are taken for granted.
Ref – Data from https://singularityhub.com/
Think about what drives high housing costs. Why does a single-family apartment in downtown cost $10 million, while the same square footage on the outskirts of city can be purchased for $100,000?
Location. Location. Location. People flock to high-density, desired areas near the jobs and the entertainment. This market demand drives up the price.
Housing sector will democratize for two reasons: The first reason is because of two key technologies which make the proximity of our home to our job irrelevant, meaning one can live anywhere (specifically, where the real estate is cheap):
(a) Autonomous Cars: If your commute time can become time to read, relax, sleep, watch a movie, have a meeting — does it matter if your commute is 60 minutes?
(b) Virtual Reality: What happens when your workplace is actually a virtual office where your co-workers are avatars? When you no longer need to commute at all. You wake up, plug into your virtual workspace, and telecommute from the farm or from the island of Azure.
The second technology drivers are robotics and 3D printing, which will democreatize the cost of building structures.
3D printing has slowly gone from a curious novelty to a totally viable option for creating all kinds of useful things, from chocolate to athletic shoes, and now MIT has invented a way to use the technology to print buildings, too. Given that most 3D printing takes place inside a sealed box, it might be a bit hard to imagine exactly how a structure could be built in such a way, but as you’ll see it can most definitely be done. (MIT printer picture below).
A number of players in the market are now exploring how 3D printed structures and buildings can dramatically reduce the cost of construction and the amount of time it takes to build a building.
WinSun in China was first to 3D print an entire building, the building was non-functional though. Recently Dubai launched world's first fully functional 3D-printed building (see picture below).
The automotive market (a trillion dollars) is being democratized by startups like Uber. But this is just the beginning. When Uber rolls out fully autonomous services, your cost of transportation will plummet.
Think about all of the related costs that disappear: auto insurance, auto repairs, parking, fuel, parking tickets. Your overall cost of "getting around" will be 5 to 10 times cheaper when compared to owning a car.
This is the future of "movator as a service."
Ultimately, the poorest people on Earth will be chauffeured around !
Tuesday, April 18, 2017
While giving a classroom lecture recently, a student asked me the question, What is Full-Stack and how can she become a Full-Stack Developer.
Arguably, this was not the first time someone asked this question… similar queries are taking rounds already in minds of thousands of aspiring developers. Well... I thought this is time I should put my 2 cents.
Normally people answer – A Full-Stack developer knows all stacks of technology. But when confronted with deeper questions like what is the definition of Stack in today's world? Who can be a potential full-stack developer? or what can one do to become a full-stack developer ? we are lost in complexity.
To explain this, let us first understand - What is the expected output from a Full-stack Developer ?
The idea of a “full-stack developer” isn’t about being fluent in every possible technology there is; because, specialization exists for a reason. It’s more about having an understanding in each of the stacks, to communicate intelligently among team members and come up with a working prototype quickly.
Full Stack Developer NOW vs 13 years (2004) ago
I have picked 2004 for a reason, because it was then when my class-mate and dear friend Sundar Pichai <Google CEO> first time unearthed the fact (at least first time for me) that End User Interface/experience design is the key to any software development, a good developer should start his/her work from there, then backwards all the way to data and process flow.
Today, we are staring at 2018 and beyond. To me, a Full-Stack Developer is -
- good in at least one technology at every stack
- should have awareness of capabilities of peer technologies, and how to use them
- comfortable in picking/learning any peer technology, when need arises
So, let’s try to break down and categorize the technology stacks that I think are required from a full-stack developer today:
- Customer centric Web Design
- Technology for Customer Devices
- Tools to develop Web pages, Flows
- Technology to keep and serve Assets and Data
- All the nut-bolts - System Administration
1. Customer centric Web Design
The business aspirations of future tells me that, this is the most important area. This area continue to expand, eventually blurring the distance between a Computing and Human interfaces due to rapid automation.
This will continue to become complex as Human-Computer Interaction (HCI) evolves. Technologies include:
- HCI (Human Computer Interaction)
- Converting website design into front-end code
Here comes the fun part. Fun, becuase this is the entry point for majority of Web developers today. Many learn these during college days... at least a part of it.
Needless to add... this stack is the backbone of Web site presentment. Here, the developer converts business logic to its visual representation. If you want to produce an enterprise class website, you’d better know these and all their annoyances.
- Semantic Web: HTML
- iOS, Android
- Hybrid: PhoneGap, Appcelerator
- CSS / CSS3: LESS, SASS, Media Queries
- Responsive design
- Mobile devices and Browser compatibility
- AJAX, JSON, XML, WebSocket
3. Tools to develop Web pages, Flows
Today, I will never hire a developer who does not use a version control, even if s/he is a solo developer.
With virtualization tools, having separated development environments on a per project basis is kind of mandatory. They are easy to set up with VirtualBox and Vagrant the least. However, With Vagrant you also need to know the basic syntax of Ruby and shell scripts as well.
(I shall write a separate blog just to cover the virtualization topic. There appears to be lots of parallel definitions going on - probably all correct in their context)
The barrier of entering the web development industry as a web developer remains low, but getting increasingly complex. Complexity grows, for example if you want to set up Vagrant , then you need to know Ruby’s syntax, as simplified as it is or if you want to manipulate DOM elements, jQuery is a good to know technology.
The dynamic nature of the whole industry makes requirements shift often to the most popular and “next best thing” tools and programming languages.
- Version control: Git, SVN, Mercurial
- Troubleshooting techniques
- Virtualization: VirtualBox, Docker, Vagrant
4. Technology to Keep and Serve Assets and Data
Apache and Nginx are basic norms. A full-stack developer should know how to set up these applications and serve the contents of his/her website.
NodeJS or PHP or Ruby (or similar) is what needs to be mastered on a high level.
In addition to web server and programming languages, database management is also a requirement for a full-stack developer which in itself is another beast. This is the place where scalability and performance plays vital role.
Relational (such as MySQL, PostgreSQL) vs non-relational databases (like MongoDB, Redis or Cassandra) are differences the full-stack developer needs to know, along with knowing the syntax of XML / JSON. Technologies:
- Programming language: PHP, NodeJS, Ruby. <This list is very long here>
- Web servers: Apache, Nginx
- Database: MongoDB, Cassandra, MySQL, Redis, SQL-JSON
5. All the nut-bolts - System Administration
Most of the Internet is powered by Linux; it’s a de-facto operating system for web development. A full-stack developer is ecpected to know how cloud hosting works. e.g. Amazon, GC, Rackspace or other providers and its APIs.
Search is an integral part of most websites – a developer should know how to set up and use search servers such as Sphinx or Elasticsearch. This part is relatively easy
Caching is also very important, Varnish, reverse proxy, Memcached and opcode caching. Technologies:
- Linux and basic shell scripting
- Cloud computing: Amazon, Google Cloud, Rackspace, etc.
- Caching: Varnish, APC / OpCache, Memcached
- Background processing: Gearman, RabbitMQ, Redis, ØMQ
- Search: Solr, Elasticsearch, Sphinx
- Monitoring: Nagios
- Security: SAML 2.0+, Certificates
Whooshhh... so much to learn… one can ask… Is it worth becoming a full-stack developer ?
I may have gone overboard while mentioning technologies within a stack, but believe me sooner or later you would want to know, if you want your website to be world-class, scalable and secure.
These herd of people are rare breed and hence in great demand. They will continue to be in super demand because for every decent size web project, I would want to be at least one Full-Stack Developer in the team. The person need not necessarily be the team-lead, because managing or leading a team is a different kind of skill.
What about Full Stack 'Architect' ?
One can quickly suggest that if someone knows so much… s/he must be an Architect... not merely a developer.
In my view… There is at least one major skill that differentiate Full-Stack Developer and Full-Stack Architect… that is - Business acumen, cost consciousness, time criticality. A well-developed beautiful web site is termed failure if it cannot attract target customers, cannot generate revenue. I shall write a separate blog just to differentiate between two.