2023: Article / video / investments.
2024: Article / video.
| ✨ Future of connectivity | ✨ Trust architecture |
| ✨ Distributed infrastructure | ✨ Future of programming |
| ✨ Next-generation computing / Next-gen materials | ✨ AI Trust, Risk, Security Management |
| ✨ Democratized Generative & Adaptive AI | ✨ Applied AI & observability |
| ✨ AI TRiSM | ✨ Human Augmentation / AI-Augmented Development |
| ✨ Digital immune system | ✨ Augmented Connected Workforce |
| ✨ Industry Cloud platforms | ✨ Platform engineering |
| ✨ Wireless value realization & 6G Technology | ✨ Super apps / Intelligent Apps |
| ✨ Internet of Behaviours (IoB) | ✨ DevSecOps |
| ✨ Next-level automation, IPA, Machine Customers & Digital Humans | ✨ Tactile VR |
| ✨ Big Data Analytics | ✨ Sustainability tech / Future of cleantech / Bio revolution |
| ✨ Everything-as-a-Service (XaaS) | ✨ Cybersecurity & defenses, Threat Exposure Management & Secure Computation |
| ✨ Composability strategy as core pillar | ✨ Other Radar Screen Candidates |
| ✨ Low-code and no-code | ✨ Total experience (TX) |
| ✨ Data-driven decision intelligence | ✨ Tiny Ambient IOT |
| ✨ Satellite Communications | ✨ Adaptive Autonomic Drones obots |
CEOs and CFOs are aligned on 3 key organizational priorities:
The diagram below illustrates the differences between IaaS (Infrastructure-as-a-Service), PaaS (Platform-as-a-Service), and SaaS (Software-as-a-Service).
For a non-cloud application, we own and manage all the hardware and software. We say the application is on-premises. With cloud computing, cloud service vendors provide three kinds of models for us to use: IaaS, PaaS, and SaaS. IaaS provides us access to cloud vendors' infrastructure, like servers, storage, and networking. We pay for the infrastructure service and install and manage supporting software on it for our application. PaaS goes further. It provides a platform with a variety of middleware, frameworks, and tools to build our application. We only focus on application development and data. 𝐒𝐚𝐚𝐒 enables the application to run in the cloud. We pay a monthly or annual fee to use the SaaS product. Over to you: which IaaS/PaaS/SaaS products have you used? How do you decide which architecture to use?

Image Source: https://www.ibm.com/cloud/learn/iaas-paas-saas
IaaS, PaaS, Cloud Native… How do we get here?
The diagram below shows two decades of cloud evolution.
2001 - VMWare - Virtualization via hypervisor
2006 - AWS - IaaS (Infrastructure as a Service)
2009 - Heroku - PaaS (Platform as a Service)
2010 - OpenStack - Open-source IaaS
2011 - CloudFoundry - Open-source PaaS
2013 - Docker - Containers
2015 - CNCF (Cloud Native Computing Foundation) - Cloud Native

Frontend
Basics: (Html, CSS, Javascript)
Frameworks (React, Vue, Angular)
Styles (Material UI, Bootstrap)
Backend
Technology (PHP, NodeJS, Ruby on Rails, Kotlin, Spring boot framework, RESTful microservices, Java, Python, ASP.NET, Rediis)
Database: RDBMS (MSSQL, MySql, Postgres) NoSql (Mongo, Couch DB, Casandra, Elasticsearch)
Graph (Neo4J, ArangoDB)
Message Queue (Kafka, SQS, Zero MQ, RabbitMQ)
Devops
Infrastructure (NGINX, AWS, Azure, ELK)
Automation (Ansible, Chef, Jenkins)
Virtualization (Docker, Bladecenter, Kubernetes, Vagrant, VMWare)
Mobile Apps
Android (Java, Kotlin, SDK)
IOS (Objective-C, Swift)
Cross Platform (React Native, IONIC, PWA, Xamarin, Unity)
Self-Driven Cars, Detection of growth Delays in Children, Automatic Handwriting Generation, Demographic Prediction, Pixel Restoration, Sound addition to Silent Films, Colourisation of Black & White Images, News aggregation, Deep Dreaming, Automatic Machine Translation.
When a browser request a service from a web service, a response code will be given. These are the list of HTTP Status code that might be returned:
| 1XX Information | 4XX Client (Continue) |
|---|---|
| 100 Continue | 407 Proxy Authentication Required |
| 101 Switching Protocols | 408 Request Timeout |
| 102 Processing | 409 Conflict |
| 103 Early Hints | 410 Gone |
| 411 Length Required | |
| 2XX Success | 412 Precondition Failed |
| 200 OK | 413 Payload Too Large |
| 201 Created | 414 URI Too Large |
| 202 Accepted | 415 Unsupported Media Type |
| 203 Non-Authoritative Information | 416 Range Not Satisfiable |
| 205 Reset Content | 417 Exception Failed |
| 206 Partial Content | 418 I'm a teapot |
| 207 Multi-Status (WebDAV) | 421 Misdirected Request |
| 208 Already Reported (WebDAV) | 422 Unprocessable Entity (WebDAV) |
| 226 IM Used (HTTP Delta Encoding) | 423 Locked (WebDAV) |
| 424 Failed Dependency (WebDAV) | |
| 3XX Redirection | 425 Too Early |
| 300 Multiple Choices | 426 Upgrade Required |
| 301 Moved Permanently | 428 Precondition Required |
| 302 Found | 429 Too Many Requests |
| 303 See Other | 431 Request Header Fields Too Large |
| 304 Not Modified | 451 Unavailable for Legal Reasons |
| 305 Use Proxy | 499 Client Closed Request |
| 306 Unused | |
| 307 Temporary Redirect | 5XX Server Error Responses |
| 308 Permanent Redirect | 500 Internal Server Error |
| 501 Not Implemented | |
| 4XX Client Error | 502 Bad Gateway |
| 400 Bad Request | 503 Service Unavailable |
| 401 Unauthorized | 504 Gateway Timeout |
| 402 Payment Required | 505 HTTP Version Not Supported |
| 403 Forbidden | 507 Insufficient Storage (WebDAV) |
| 404 Not Found | 508 Loop Detected (WebDAV) |
| 405 Method Not Allowed | 510 Not Extended |
| 406 Not Acceptable | 511 Network Authentication Required |
| 599 Network Connect Timeout Error |
Agile Methodology, Scrum Framework, Jira / Kanban Board, Confluence, Communication, Collaboration, Systems Thinking, Amplifying feedback loops, Cultural change & adoption
Top 5 Resources for DevOps
| Highest paying | Fastest growing |
| Data Scientist, ML Engineer, Software Engineer, Cloud Engineer, DevOps Specialist, Penetration Tester, Blockchain Specialist, Database Developer, Frontend Developer, Backend Developer, Fullstack Developer, Mobile Developer | Data Scientist, Web Developer, Data Engineer, Cloud Engineer, AI Scientist, Security Analyst, Python programmer, DevOps Scientist, Blockchain Developer |
API analogy:
Humans are an API to ChatGPT.
ChatGPT is an API to Python.
Python is an API to C.
C is an API to assembly.
Assembly is an API to binary.
Binary is an API to physics.
Physics is an API to the machine that runs the universe.
It's computation all the way down.
| Key | Linux | Unix |
|---|---|---|
| Development | Linux is open source and is developed by Linux community | Unix was developed by AT&T Bell labs and is not open source. |
| Cost | Linux is free to use. | Unix is licensed OS. |
| Supported File systems | Ext2, Ext3, Ext4, Jfs, ReiserFS, Xfs, Btrfs, FAT, FAT32, NTFS | fs, gpfs, hfs, hfs+, ufs, xfs, zfs. |
| Usage | Linux is used in wide varieties from desktop, servers, smartphones to mainframes. | Unix is mostly used on servers, workstations or PCs. |
| Default Shell | Bash (Bourne Again SHell) is default shell for Linux. | Bourne Shell is default shell for Unix. |
| GUI | Linux uses KDE and Gnome. Other GUI supported are LXDE, Xfce, Unity, Mate. | Unix was initially a command based OS. Most of the unix distributions now have Gnome. |
| Target Processor | Linux was initially developed for Intel's x86 hardware processors. Now it supports 20+ processor families. | CUnix supports PA-RISC and Itanium family. |
| Example | Ubuntu, Debian GNU, Kalilinux, Arch Linux, etc… | SunOS, Solaris, SCO UNIX, AIX, HP/UX, ULTRIX, etc… |
| Released on November 2007 | Released on August 2011 |
|---|---|
| Utility first | Component first |
| Highly Customizable | Less customizable |
| Bloats HTML Template | Keeps HTML Template Clean |
| Known for flexibility | Known for responsiveness |
| Can reduce file size using Purge CSS | Large file size than Tailwind CSS |
| Ideal for projects that require lot of customization | Use it if you want to just play around with common layouts |
Neural networks are a subset of machine learning and at the heart of deep learning algorithms. Their name and structure are inspired by the human brain, mimicking the way that biological neurons signal to one another. Neural networks consist of nodes in different layers - an input layer, one or more hidden layers, and an output layer.
Convolutional neural networks (CNNs) are usually utilized for image recognition, pattern recognition, and/or computer vision. These networks harness principles from linear algebra, particularly matrix multiplication, to identify patterns within an image.
Recurrent neural networks (RNNs) are identified by their feedback loops. These learning algorithms are primarily leveraged when using time-series data to make predictions about future outcomes, such as stock market predictions or sales forecasting. Speech recognition, music generation, sentiment classification and machine translation all use recurrent neural networks (#RNNs) to predict and solve temporal problems in sequential data. To understand how RNNs work, we can compare them to traditional, feed-forward neural networks (FFNNs): In FFNNs, information only moves in one direction – input layer > hidden layer > output layer – never touching a node twice. Input/output are independent, with no “memory” beyond its training. ⏩ In RNNs, information is “cycled,” using both present and the immediate past (sequentially) as inputs to predict what’s coming next. 🔄
| CNN | RNN | |
|---|---|---|
| Data input | Image data/video data | Time series data/text data/audio |
| Architecture | Filters/kernels extract and assign importance to relevant features from data input to differentiate images | Feedback loops capture sequential information of input data, preserved in RNN's hidden state vector - similar to short term memory |
| Use cases | Object detection, face recognition, image analysis | Speech recognition, translation, text generation, time series analysis |
| Examples | • One-to-one > traditional, FFNN 🎯 • One-to-many > music generation 🎶 • Many-to-one > sentiment classification 💔 • Many-to-many > machine translation 🤖 |
Searching: Linear Search, Binary Search, Depth First Search, Breadth First Search
Sorting: Insertion Sort, Heap Sort, Selection Sort, Merge Sort, Ouick Sort, Counting Sort
Graphs: Kruskal's Algo, Dilkstra's Algo, Bellman Ford Algo, Floyd Warshall Algo, Topological Sort Algo, Flood Fill Algo, Lee Algo
Arrays: Kadane's Algo, Floyd's Cycle Detection Algo, Quick Select, KMP Algo, Boyer-MMV Algo
Basics: Huffman Coding, Compression Algo, Euclid's Algo, Union Find Algo
See also: 17 equations that changed the world
| Regression | Instance-based Methods |
|---|---|
| Ordinary Least Squares | K-Nearest neighbour (KNN) |
| Logistic Regression | Learning Vector Quantization (LVQ) |
| Multivariate Adaptive Regression Splines (MARS) | Self-Organizing Map (SOM) |
| Locally Estimated Scatterplot Smoothing (LOESS) | |
| Decision Tree | |
| Regularization Methods | Classification and Regression Tree (CART) |
| Ridge Regression | Iterative Dichotomiser 3 (ID3) |
| LASSO | C4.5 |
| Elastic Net | Random Forest |
| Gradient Boosting Machines (GBM) | |
| Bayesian | |
| Naive Bayes | Kernel Methods |
| Averaged One-Dependence Estimators (AODE) | Support Vector Machines (SVM) |
| Bayeslan Belief Network (BBN) | Radial Basis Function (RBF) |
| Linear Discriminate Analysis (LDA) | |
| Association Rule Learning | |
| Apriori algorithm | Artificial Neural Network |
| Eclat algorithm | Perceptron |
| Back-Propagation | |
| Deep Learning | Hopfield Network |
| Restricted Boltzmann Machine (RBM) | |
| Deep Belief Networks (DBN) | Ensemble Methods |
| Convolutional Network | Boosting |
| Stacked Auto-encoders | Bootstrapped Aggregation (Bagging) |
| Ada Boost | |
| Dimensionality Reduction | Stacked Generalization (blending) |
| Principal Component Analysis (PCA) | Gradient Boosting Machines (GBM) |
| Partial Least Squares Regression (PLS) | Random Forest |
| Sammon Mapping | |
| Multidimensional Scaling (MDS) | |
| Projection Pursuit |