The Journey Ahead

Experiences with modern tools, frameworks and languages

Last modified: May-29-2022, 01:43PM +08

The Story So Far

It was around late 2018 when I decided to go knee-deep into the world of Artificial Intelligence(AI), Machine Learning(ML) and finally Deep Learning(DL). Coming with the background from biomedical science and psychology, meant that I have to pick up new entire fields relating to Computer Science(CS), software engineering(SE) and AI.

Putting aside new concepts, terminologies and principles. All these fields have one thing in common and that is mathematics. Combing through tons of research papers and reference books just to build a concrete foundational understanding of these new complexities proved to be extremely intensive. I realized one simple trick to filter technical jargon and that is go straight to the math.

Over the same period, I have basically become a sponge for the new influx of information and this is my humble attempt at the documentation and review of my life-long learning process.

Current Projects(2021-Beyond)

  • tfx, kubeflow pipelines
  • tensorflow-js models running in web browser
  • tensorflow lite micro models running on embedded microcontroller
  • nvidia jarvis(beta) as a backend service for flutter application
  • implementation of modern multi-modal DL architectures

Text Editor

  • Vim

I started with PyCharm without knowledge of vim’s existence at the time. Once I was using ubuntu for my daily and work, vim resonates with me instantly. It felt like a superpower with features such as macros, registers and integration with shell tools. Now I’m running it with ~30 plugins, supporting various languages/DSL, as well as development tools while keeping its startup time under 350ms.

Programming Languages

  • Python
  • C/C++, CUDA
  • Dart
  • Go
  • JavaScript, TypeScript
  • Rust

I have tried my best to steer clear of JavaScript, HTML and CSS as much as possible. Each passing year it seems less and less likely, and I am not looking forward to these days at all. Fingers crossed.

AI Software Stack

ML/Data
cython
dgl
hdf5
modin
numba
numpy
onnx
opencv(compiled with cuda)
pandas
protobuf(C++ implementation)
pytorch
rapidai
scikit-learn
seaborn
tensorflow
tpot
xgboost
Performance
deepstream
nsight systems/compute
tensorRT
tensorboard
triton server
Computer Vision
gstreamer
ASR, NLP, NLU, TTS
huggingface(transformers)
nvidia tlt, nemo, jarvis
Recommender
tensorflow-recommenders
Model, Graph Compilation
apache tvm
mlir/llvm
xla
Web, UI, Mobile
flutter(dart)
graphql
grpc
hugo
mediapipe
ngrok
streamlit
tensorflow-js
ultrahook
Application
fastapi
firebase
fireward
Storage
backblaze
firestore
minio
postgresql
Networking
cert-manager
curl
envoy
httpie
istio
metallb
traefik
Security, Authentication, Authorisation
JSON web tokens
gnupg
keycloak
mkcert
openssl
Pipelines(CM/CE/CP/CT)
apache beam
apache flink
apache kafka
argo
kubeflow
tekton
tfx
CI/CD, testing
argocd
gitlab CI/CD
jenkins-x
locust
pytest
unittest
vegeta
MLOps(Kubernetes, Docker)
elasticsearch, logstash, kibana(ELK)
alibi
apache bookkeeper
apache zookeeper
katib
kibana
knative
minikube
prometheus(alertmanager)
rancher
seldon core
triton inference server
Virtualization
kvm
virtualbox
Cloud Platforms
GCE
openshift
openstack
Internet of Things
arduino
coral
raspberrypi