README.md
<div align="center">
<p>
<a href="https://www.hongbomiao.com"><img width="100" src="https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/650b632a-383f-4e84-8227-bf1fac268d45" alt="Butterfly" /></a>
</p>
<h2>Personal R&D Lab</h2>
<p>Making magic happen</p>
<br />
<p>
<a href="https://github.com/hongbo-miao/hongbomiao.com/actions"><img alt="GitHub Actions" src="https://img.shields.io/github/actions/workflow/status/hongbo-miao/hongbomiao.com/build.yml?branch=main" /></a>
<a href="https://depfu.com/github/hongbo-miao/hongbomiao.com?project_id=29781"><img alt="Depfu" src="https://badges.depfu.com/badges/e337a1462a48dbcb803c98b5b2157aa7/overview.svg" /></a>
<a href="https://stats.uptimerobot.com/RoOoGTvyWN"><img alt="Uptime Robot status" src="https://img.shields.io/uptimerobot/status/m783305207-c7842815153e530df85633fe" /></a>
<a href="https://www.http3check.net/?host=hongbomiao.com"><img alt="HTTP/3" src="https://img.shields.io/badge/http%2F3-supported-brightgreen" /></a>
<a href="https://hstspreload.org/?domain=www.hongbomiao.com"><img alt="Chromium HSTS preload" src="https://img.shields.io/hsts/preload/www.hongbomiao.com" /></a>
<a href="https://github.com/commitizen/cz-cli"><img alt="Commitizen friendly" src="https://img.shields.io/badge/commitizen-friendly-brightgreen.svg" /></a>
</p>
<p>
<a href="https://goreportcard.com/report/github.com/hongbo-miao/hongbomiao.com/api-go"><img alt="Go Report Card" src="https://goreportcard.com/badge/github.com/hongbo-miao/hongbomiao.com/api-go" /></a>
<a href="https://observatory.mozilla.org/analyze/www.hongbomiao.com"><img alt="Mozilla Observatory grade" src="https://img.shields.io/mozilla-observatory/grade/www.hongbomiao.com" /></a>
<a href="https://app.codacy.com/gh/hongbo-miao/hongbomiao.com/dashboard"><img alt="Codacy grade" src="https://img.shields.io/codacy/grade/dc922acc14014b4abc978afd0810e56b" /></a>
<a href="https://codeclimate.com/github/hongbo-miao/hongbomiao.com"><img alt="Code Climate maintainability" src="https://img.shields.io/codeclimate/maintainability/hongbo-miao/hongbomiao.com" /></a>
<a href="https://codeclimate.com/github/hongbo-miao/hongbomiao.com/trends/technical_debt"><img alt="Code Climate technical debt" src="https://img.shields.io/codeclimate/tech-debt/hongbo-miao/hongbomiao.com" /></a>
</p>
<p>
<a href="https://hitsofcode.com/github/hongbo-miao/hongbomiao.com/view?branch=main"><img alt="Code hits" src="https://hitsofcode.com/github/hongbo-miao/hongbomiao.com?branch=main&label=code%20hits" /></a>
<a href="https://github.com/hongbo-miao/hongbomiao.com"><img alt="Code lines" src="https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/hongbo-miao/ecff3e2b8226a5c1406b0c2e2622e968/raw/code_line_count.json" /></a>
<a href="https://github.com/hongbo-miao/hongbomiao.com"><img alt="Code size" src="https://img.shields.io/github/languages/code-size/hongbo-miao/hongbomiao.com" /></a>
<a href="https://github.com/hongbo-miao/hongbomiao.com/graphs/contributors"><img alt="Commit activity" src="https://img.shields.io/github/commit-activity/y/hongbo-miao/hongbomiao.com"></a>
</p>
<p>
<a href="https://codecov.io/gh/hongbo-miao/hongbomiao.com"><img alt="Codecov" src="https://img.shields.io/codecov/c/github/hongbo-miao/hongbomiao.com" /></a>
<a href="https://github.com/prettier/prettier"><img alt="Code style" src="https://img.shields.io/badge/code_style-prettier-ff69b4.svg" /></a>
<a href="https://github.com/psf/black"><img alt="Code style" src="https://img.shields.io/badge/code%20style-black-000000.svg" /></a>
<a href="https://github.com/hongbo-miao/hongbomiao.com/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/github/license/hongbo-miao/hongbomiao.com" /></a>
</p>
<p>
<a href="https://twitter.com/hongbo_miao"><img alt="X follow" src="https://img.shields.io/twitter/follow/hongbo_miao?label=Follow&style=social" /></a>
<a href="https://github.com/hongbo-miao"><img alt="GitHub follow" src="https://img.shields.io/github/followers/hongbo-miao?label=Follow&style=social" /></a>
</p>
<p>
<a href="https://www.chromatic.com/builds?appId=5d626a63a601530020759b10"><img alt="Storybook" src="https://cdn.jsdelivr.net/gh/storybookjs/brand@master/badge/badge-storybook.svg" /></a>
</p>
</div>
---
# πͺ΄ Project Activity
![Repobeats analytics](https://repobeats.axiom.co/api/embed/5ea3f5ccba6439bdc337ee75ade22bc3525e3d9c.svg)
# π©βπ Introduction
A personal research and development (R&D) lab that facilitates the sharing of knowledge.
# π Architecture
The diagram illustrates the repository's architecture, which is considered overly complex. It is essential to thoroughly understand the tradeoffs associated with before onboarding any technology into your project.
(The diagram here may take a moment to load. Please wait patiently.)
![Architecture](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/3946b33d-12c6-47bd-bf3b-c2f0e1b01973)
# π¦ Setup
```shell
make kubernetes-set-up
```
```shell
make kubernetes-clean
```
# 𧱠Tech Stack
## Web
- **React** - Web framework
- **Redux** - State container
- **React Query** - Hooks for fetching, caching and updating asynchronous data
- **redux-observable** - Side effects
- **RxJS** - Asynchronous programming with observable streams
- **graphql-tag** - GraphQL query parsing
- **Bulma** - CSS framework
- **PurgeCSS** - Unused CSS removing
- **Jest** - Unit testing, snapshot testing
- **React Testing Library** - React component testing
- **Storybook** - Visual testing
- **[Chromatic](https://www.chromatic.com/builds?appId=5d626a63a601530020759b10)** - Storybook reviewing
- **rxjs/testing** - Marble testing
- **Cypress** - End-to-end testing
- **Lighthouse CI** - Performance, accessibility, search engine optimization (SEO), progressive web app (PWA) analysis
- **Sentry** - Error tracking
- **Report URI** - Security reporting
- **Google Tag Manager** - Tag management
- **Google Analytics** - Web analytics
- **FullStory** - Experience analytics, session replay, heatmaps
- **Namecheap** - Domain
- **Cloudflare** - DNS, DDoS protection, CDN
- **[HTTP/3 Check](https://www.http3check.net/?host=www.hongbomiao.com)** - HTTP/3 checking
- **[hstspreload.org](https://hstspreload.org/?domain=hongbomiao.com)** - HSTS checking
- **[Mozilla Observatory](https://observatory.mozilla.org/analyze/www.hongbomiao.com)** - Security monitoring
- **[UptimeRobot](https://stats.uptimerobot.com/RoOoGTvyWN)** - Uptime monitoring
## Mobile
### Mobile - iOS
- **SwiftUI** - UI framework
- **XCTest** - Unit testing, performance testing
- **Slather** - Code coverage reports generating
### Mobile - Android
- **AndroidX** - Android Jetpack
- **JUnit** - Unit testing, instrumented testing
### Mobile - React Native
- **Expo** - Universal native apps making platform
- **React Native** - Mobile application framework
- **UI Kitten** - UI library
- **React Native Testing Library** - React Native component testing
## Desktop
### Desktop - Qt
- **Qt Quick** - Cross-platform application development framework
- **QML** - Qt modeling language
## API Server
### API Server - Go
- **Gin** - Web framework
- **gRPC** - Remote procedure call (RPC) framework
- **graphql-go** - GraphQL
- **jwt-go** - JSON Web Token (JWT)
- **gin-contrib/cors** - Cross-Origin Resource Sharing (CORS)
- **opa** - Open Policy Agent
- **dgo** - Dgraph client
- **minio-go** - MinIO client
- **go-redis** - Redis client
- **pgx** - PostgreSQL driver
- **Resty** - HTTP client
- **Squirrel** - SQL query builder
- **apm-agent-go** - Application performance monitoring (APM) agent
- **OpenTelemetry Go** - OpenTelemetry
- **Prometheus Go** - Prometheus
- **Testify** - Unit testing
- **GoDotEnv** - Environment variables loading
- **jsonparser** - JSON parser
- **zerolog** - Logging
### API Server - Python
- **Flask** - Web framework
- **Flask-CORS** - Cross-Origin Resource Sharing (CORS)
- **Gunicorn** - Python web server gateway interface (WSGI) HTTP server
- **asyncpg** - PostgreSQL client
- **Tenacity** - General-purpose retrying library
- **pytest** - Unit testing
- **pydantic** - Data validation
- **HTTPX** - HTTP client
- **pypdf** - PDF library
- **Poetry** - Python package management
- **Poe the Poet** - Poetry task runner
### API Server - Node.js
- **Express** - Web framework
- **GraphQL.js**, **express-graphql** - GraphQL
- **graphql-ws**, **graphql-subscriptions** - GraphQL subscriptions
- **graphql-upload** - GraphQL upload
- **graphql-shield** - GraphQL permissions
- **graphql-depth-limit** - GraphQL depth limit
- **graphql-query-complexity** - GraphQL query complexity analysis
- **DataLoader** - Batching and caching
- **Knex.js** - SQL query builder
- **node-postgres** - PostgreSQL client
- **ioredis** - Redis client
- **rate-limiter-flexible** - Rate limiting
- **expressjs/cors** - Cross-Origin Resource Sharing (CORS)
- **csurf** - CSRF protection
- **jsonwebtoken**, **express-jwt** - JSON Web Token (JWT)
- **bcrypt** - Password hashing
- **axios** - HTTP client
- **Helmet** - HTTP header `Content-Security-Policy`, `Referrer-Policy`, `Strict-Transport-Security`, `X-Content-Type-Options`, `X-DNS-Prefetch-Control`, `X-Download-Options`, `X-Frame-Options`, `X-Permitted-Cross-Domain-Policies`, `X-XSS-Protection`
- **Report To** - HTTP header `Report-To`
- **Network Error Logging** - HTTP header `NEL`
- **express-request-id** - HTTP header `X-Request-ID`
- **response-time** - HTTP header `X-Response-Time`
- **connect-timeout** - Request timeout
- **Terminus** - Health check and graceful shutdown
- **pino** - Logging
- **dotenv-flow** - Environment variables loading
- **Stryker** - Mutation testing
- **SuperTest** - HTTP testing
- **autocannon** - HTTP benchmarking
- **Clinic.js** - Performance profiling
- **Node.js** - JavaScript runtime
- **npm** - JavaScript package management
## Cloud Native
- **Sealed Secrets** - Kubernetes secret encrypting
- **ExternalDNS** - Kubernetes services and Ingresses exposing
- **cert-manager** - Kubernetes X.509 certificate management
- **Hasura** - GraphQL Engine
- **hasura-metric-adapter** - Hasura GraphQL Engine metric adapter
- **Linkerd** - Service mesh
- **Caddy** - Web server, reverse proxy, load balancer
- **Traefik** - Web server, reverse proxy, load balancer
- **nginx** - Web server, reverse proxy, load balancer
- **Metrics Server** - Kubernetes metrics
- **Elastic APM** - Application performance monitoring
- **OpenTelemetry** - Observability framework
- **Jaeger** - Distributed tracing system
- **Netdata** - Distributed monitoring platform
- **Telegraf** - Plugin-driven server agent
- **Thanos** - Highly available Prometheus setup with long-term storage capabilities
- **Pixie** - Observability tool for Kubernetes applications
- **Docker** - Container
- **Skaffold** - Continuous development for Kubernetes applications
- **Multipass** - VM management
- **Locust** - Load testing
- **Cloudflare Tunnel** - Tunneling
- **Vertical Pod Autoscaler** - Kubernetes vertical pod autoscaler
- **K3s** - Lightweight Kubernetes
- **containerd** - Container runtime
- **Kubernetes** - Container-orchestration system
## Data
### Database, Data Warehouse, Data Lakehouse
- **Trino** - Distributed SQL query engine
- **PostgreSQL** - Object-relational database
- **Postgres Operator** - PostgreSQL high-availability (HA) template
- **Postgres Operator** - PostgreSQL cluster provisioning
- **pgAdmin** - PostgreSQL management tool
- **MySQL** - Relational database
- **MariaDB** - Fork of MySQL
- **Hydra** - Column-oriented SQL database
- **ClickHouse** - Column-oriented SQL database
- **YugabyteDB** - Distributed SQL database
- **TimescaleDB** - Time-series SQL database
- **InfluxDB** - Time-series database
- **InfluxDB Enterprise** - Distributed time-series database
- **Prometheus** - Time-series database
- **Loki** - Log aggregation system
- **Apache Cassandra** - Distributed wide-column NoSQL database
- **Qdrant** - Distributed vector database
- **Chroma** - Distributed vector database
- **Dgraph** - Distributed graph database
- **Elasticsearch** - Distributed document-oriented search engine
- **Kibana** - Elasticsearch visualization
- **Redis** - Distributed in-memory keyβvalue database
- **KeyDB** - Multithreaded fork of Redis
- **MinIO** - Object storage
- **Apache ZooKeeper** - Distributed coordination system
- **Apache Hadoop** - Software utility collection
- **Apache Hadoop HDFS (Distributed File System)** - Distributed file system
- **Apache Hadoop YARN (Yet Another Resource Negotiator)** - Resource management and job scheduling framework
- **Apache Hadoop MapReduce** - Data processing framework
- **Apache Hive** - Distributed data warehousing and SQL-like query language system built on top of Apache Hadoop
- **Delta Lake** - Data lakehouse
- **Snowflake** - Data warehouse
- **golang-migrate/migrate** - Database migrations
### Data Ingestion
- **Airbyte** - Data integration
- **Vector** - Log collector
- **Fluent Bit** - Log collector
### Data Orchestration
- **Prefect** - Orchestration platform
- **Apache Airflow** - Orchestration platform
- **Temporal** - Orchestration platform
### Data Processing
- **Apache Spark** - Data processing framework
- **Spark ML** - Spark machine learning
- **pyspark** - Spark API library
- **Delight** - Spark UI and history server
- **Apache Sedona** - Spatial data processing framework
- **Apache Flink** - Data processing framework
- **flink-streaming-java** - Flink
- **flink-connector-twitter** - Flink Twitter connector
- **flink-connector-jdbc** - Flink JDBC Connector
- **flink-connector-redis** - Flink Redis connector
- **Apache Kafka** - Distributed event streaming platform
- Client
- **librdkafka** - Kafka C/C++ client
- **libserdes** - AVRO serialization and deserialization
- **confluent-kafka** - Kafka Python client
- Schema registry
- **Confluent Schema Registry** - Schema Registry
- **Apicurio Registry** - Schema Registry
- Connector
- **Debezium** - Distributed change-data-capture (CDC) platform
- **debezium-connector-postgres** - PostgreSQL CDC source connector
- **confluentinc-kafka-connect-jdbc** - JDBC source and sink connector
- **confluentinc-kafka-connect-s3** - Amazon S3 Sink Connector
- **snowflake-kafka-connector** - Snowflake Sink Connector
- **kafka-connect-elasticsearch** - Elasticsearch sink connector
- **http-connector-for-apache-kafka** - HTTP sink connector
- **kafka-connect-avro-converter** - Confluent Avro converter
- **apicurio-registry-distro-connect-converter** - Apicurio Avro converter
- Management tool
- **Redpanda Console** - Kafka management
- **AKHQ** - Kafka management
- **UI for Apache Kafka** - Kafka management
- **topicctl** - Kafka topic management
### Data Transformation
- **dbt** - Data transformation
### Data Visualization
- **Grafana** - Data visualization
- **Metabase** - Data visualization
- **Apache Superset** - Data visualization
- **Tableau** - Data visualization
### Data Analytics
- **NumPy** - Scientific computing library
- **pandas** - Data analysis library
- **GeoPandas** - Geographic data library
- **AWS SDK for pandas** - pandas on AWS
- **Modin** - pandas workflows scaling
- **JupyterLab** - Web-based interactive computing platform
- **nb-clean** - Jupyter notebook cleaning
- **Databricks** - Unified data analytics platform
- **Palantir** - Data integration and analysis platform
### Data Quality
- Data drift
- Covariate shift
- Concept drift
- Univariate drift
- Jensen-Shannen distance - categorical and continuous
- Hellinger - categorical and continuous
- Wasserstein - continuous
- Kolgomorov-Smirnov - continuous
- L-infinity - categorical
- Chi2 - categorical
- Multivariate drift
- Performance estimation
- Direct loss estimation (DLE) - Regression
- Mean absolute error (MAE)
- Mean absolute percentage error (MAPE)
- Mean squared error (MSE)
- Root mean squared error (RMSE)
- Mean squared logarithmic error (MSLE)
- Root mean squared logarithmic error (RMSLE)
- Confidence-based performance estimation (CBPE)- Classification
- Confusion matrix
- ROC AUC
- Accuracy
- Precision
- Recall
- F1 score
- Regression analysis
- Linear regression
- Polynomial regression
- Lasso regression (L1 regularization)
- Ridge regression (L2 regularization)
- Elastic net (L1 + L2 regularization)
- Logistic regression
- Bayesian regression
- Stepwise regression
- Robust regression
- Ecological regression
- Quantile regression
- Ensemble learning
- Bagging
- Boosting
- Adaptive boosting
- AdaBoost
- Gradient boosting
- CatBoost
- XGBoost
- Stacking
### Machine Learning (ML)
- **PyTorch** - Machine learning
- **PyTorch Geometric** - PyTorch geometric deep learning extension
- **TorchServe** - PyTorch models serving
- **Flax** - Neural network for JAX
- **Optax** - Gradient processing and optimization for JAX
- **Lightning** - Deep Learning framework
- **LangChain** - Large language model (LLM) framework
- **NeuralForecast** - Neural forecasting
- **GPT4All** - Large language models
- **Transformers** - Machine learning models
- **Gradio** - Machine learning web application building
- **Streamlit** - Data web application building
- **AutoGluon** - Automated machine learning (AutoML) library
- **OGB** - Open graph benchmark
- **Rasa** - Machine learning framework for automated text and voice-based conversations
- **CML** - Continuous machine learning
- **DVC** - Data version control
- **Feast** - Feature store
- **Kubeflow** - Machine learning platform
- **MLflow** - Machine learning experiment tracking
- **Weights & Biases** - Machine learning experiment tracking
- **Triton Inference Server** - Inference server
## Computer Vision
- **OpenCV** - Computer vision library
- **supervision** - Computer vision library
- **Ultralytics YOLOv8** - Object detection model
- **Open3D** - 3D data processing
- **PyVista** - 3D plotting and mesh analysis
- **Visualization Toolkit (VTK)** - Image processing, 3D graphics, volume rendering and visualization
## Computing
### Parallel Computing
- **CUDA** - Parallel computing
### High-Performance Computing (HPC)
- **Julia** - High-performance dynamic programming language
- **JAX** - High-performance numerical computing
- **AWS ParallelCluster** - High performance computing (HPC) cluster management
- **NICE DCV** - Remote display
- **AWS Batch** - Batch computing
- **Open MPI** - High-performance computing (HPC) library
- **Slurm** - Workload management
### Cloud Computing
- **Amazon EC2** - Cloud computing
- **Ray** - Distributed computing framework
- **SkyPilot** - Sky computing
### Quantum Computing
- **Qiskit** - Quantum computing
## Cloud
### Cloud Platform
- **Amazon Web Services**
- **Amazon Athena** - Serverless query service
- **Amazon CloudTrail** - Data governance, data compliance, data auditing
- **Amazon DynamoDB** - NoSQL database
- **Amazon EBS** - Block storage
- **Amazon EC2** - Cloud computing
- **Amazon ECR** - Container registry
- **Amazon EKS** - Kubernetes
- **Amazon EMR** - Big data platform
- **Amazon EventBridge** - Serverless event bus
- **Amazon MSK** - Kafka
- **Amazon RDS** - Relational database service
- **Amazon Route 53** - Domain Name System (DNS) web service
- **Amazon S3** - Object storage
- **Amazon Redshift** - Data warehouse
- **Amazon SageMaker** - Machine learning platform
- **Amazon SQS** - Queue
- **Amazon VPC** - Virtual private cloud
- **AWS Batch** - Batch computing
- **AWS Certificate Manager** - SSL/TLS certificate management
- **AWS CloudFormation** - Infrastructure as code (IaC)
- **AWS CodeCommit** - Version control
- **AWS Glue** - Serverless data integration
- **AWS Glue Crawler** - Data source discovery
- **AWS Glue Data Catalog** - Data catalog
- **AWS Glue DataBrew** - Data cleaning
- **AWS IAM** - Identity and access management
- **AWS IoT Core** - Internet of Things (IoT)
- **AWS KMS** - Key management service
- **AWS Lake Formation** - Data lake governance
- **AWS ParallelCluster** - High performance computing (HPC) cluster management
- **NICE DCV** - Remote display
- **AWS Secrets Manager** - Password management
- **Google Cloud**
- **BigQuery** - Data warehouse
- **BigQuery ML** - BigQuery machine learning
- **Dataprep** - Data cleaning
- **Looker Studio** - Data visualization
- **Vertex AI** - Machine learning platform
### Cloud Infrastructure
- **Terraform** - Infrastructure as code (IaC)
- **Pulumi** - Infrastructure as code (IaC)
- **Karpenter** - Kubernetes node autoscaler
### Cloud Security
- **Prowler** - Cloud security assessments
### Cloud Cost
- **Komiser** - Cloud cost monitoring
## Ops
- **Argo CD** - Declarative GitOps CD for Kubernetes
- **Rancher** - Kubernetes container management platform
- **Goldilocks** - Kubernetes resource requests recommendation
- **Polaris** - Kubernetes best practices validation
- **Sloop** - Kubernetes history visualization
- **OpenCost** - Kubernetes cost monitoring
- **Kubecost** - Kubernetes cost monitoring
- **Diun** - Container image update notifier
- **Vagrant** - Development environments building and distributing
- **Ansible** - IT automation system
- **Discord** - ChatOps
- **Opsgenie** - Incident management platform
- **[GitHub Actions](https://github.com/hongbo-miao/hongbomiao.com/actions)** - Continuous integration
## Authentication, Authorization, Security
- **Apache Ranger** - Authorization, auditing
- **Ory Hydra** - OAuth 2.0 and OpenID Connect server
- **Open Policy Agent (OPA)** - Policy-based control
- **OPAL** - Open-policy administration layer
- **CodeQL** - Variant analysis
- **Gitleaks** - Git secret scanning
- **GitGuardian** - Git secret scanning
- **xxHash** - Hash algorithm
## Reverse Engineering
- **hexedit** - File viewing and editing in hexadecimal and ASCII
- **xxd** - File viewing and editing in hexadecimal and ASCII
- **strings** - Strings of printable characters viewing
- **objdump** - Disassembler
- **IDA** - Disassembler
## Ethereum
- **Solidity** - Contract-oriented programming language
- **solc-js** - JavaScript bindings for the Solidity compiler
## Embedded, IoT, Hardware
- **VHDL** - Very High Speed Integrated Circuits Program (VHSIC) hardware description language
- **pySerial** - Serial communication library
- **cantools** - Controller Area Network (CAN) bus tools
- **python-can** - Controller Area Network (CAN) bus library
- **Valgrind** - Memory debugging and profiling
- **Yocto Project** - Linux distribution creating
- **ROS** - Robot operating system
- **FreeRTOS** - Real-time operating system
- **ASTERIOS** - Real-time, safety-critical applications development
- **RTI Connext** - Real-time, distributed systems framework
- **RTI Connext DDS** - Data distribution service (DDS)
- **Rclone** - Sync program
- **restic** - Backup program
- **OpenSCAD** - 3D CAD Modeller
- **Arduino Uno** - Microcontroller board
- **BeagleBone Black** - Microcontroller board
- **Raspberry Pi 4 Model B** - Single-board computer (SBC)
- **Jetson Nano** - Single-board computer (SBC)
- **Jetson TX2** - Single-board computer (SBC)
## Simulation
- **AnyLogic** - Simulation modeling tool
- **NI LabVIEW** - Graphical programming environment
- **NI VeriStand** - Real-time testing and simulation
- **niveristand** - NI VeriStand API library
- **npTDMS** - TDMS files reading and writing
- **PyVISA** - Virtual instrument software architecture (VISA) API library
- **MATLAB** - Programming and numeric computing platform
- **5G Toolbox** - 5G communications systems simulation, analysis, and testing
- **6G Exploration Library** - 6G communications systems simulation, analysis, and testing
- **Aerospace Toolbox** - Aerospace vehicle motion analysis and visualization
- **Automated Driving Toolbox** - ADAS and autonomous driving systems design, simulation, and testing
- **Bioinformatics Toolbox** - Genomic and proteomic data analysis and visualization
- **Computer Vision Toolbox** - Computer vision, 3D vision, and video processing systems design and testing
- **Database Toolbox** - Relational and NoSQL databases interacting
- **Lidar Toolbox** - Lidar processing systems design, analysis, and testing
- **Navigation Toolbox** - Autonomous navigation algorithms design, simulation, and deployment
- **Satellite Communications Toolbox** - Satellite communications systems simulation
- **Signal Processing Toolbox** - Signal processing and analysis
- **Simulink** - Simulation and model-based designing
- **Simscape** - Multidomain physical systems simulation
- **CoppeliaSim** - Robot simulation
## Aerospace
- **AeroSandbox** - Aircraft design and optimization
- **OpenAeroStruct** - Aerostructural optimization
- **OpenMDAO** - Multidisciplinary analysis and optimization
- **OpenFOAM** - Computational fluid dynamics (CFD)
- **SimScale** - Computational fluid dynamics (CFD), finite element analysis (FEA), thermal simulation
- **ParaView** - Post-processing visualization
- **PX4** - Flight control software
- **CubeSat** - Miniaturized satellite
- **QGroundControl** - Ground control station (GCS) for unmanned aerial vehicles (UAVs)
## Code
- **ansible-lint** - Ansible linter
- **ClangFormat** - C/C++ code formatter
- **CMakeLint** - CMake linter
- **Prettier** - Code formatter
- **commitlint** - Commit message linter
- **Stylelint** - CSS linter
- **hadolint** - Dockerfile linter
- **gofmt** - Go code formatter
- **golangci-lint** - Go linter
- **ESLint** - JavaScript linter
- **Ktlint** - Kotlin code formatter and linter
- **detekt** - Kotlin static type checker
- **Kubeconform** - Kubernetes manifest linter
- **markdownlint-cli2** - Markdown linter
- **MISS_HIT** - MATLAB code formatter
- **Buf** - Protocol Buffers linter
- **Black** - Python code formatter
- **autoflake**, **isort**, **Ruff** - Python linter
- **Mypy** - Python static type checker
- **qmllint** - QML linter
- **opa** - Rego code formatter
- **RuboCop** - Ruby code formatter and linter
- **rustfmt** - Rust code formatter
- **Clippy** - Rust linter
- **Scalafmt** - Scala code formatter
- **Scalafix** - Scala linter
- **ShellCheck** - Shell linter
- **solhint** - Solidity linter
- **SQLFluff** - SQL code formatter and linter
- **terraform** - Terraform code formatter
- **tsc** - TypeScript static type checker
- **VHDL Style Guide (VSG)** - VHDL code formatter
- **@prettier/plugin-xml** - XML formatter
- **yamllint** - YAML linter
- **GitHub** - Version control
- **[SonarCloud](https://sonarcloud.io/project/overview?id=hongbo-miao_hongbomiao.com)**, **[Codacy](https://app.codacy.com/gh/hongbo-miao/hongbomiao.com/dashboard)**, **[Code Climate](https://codeclimate.com/github/hongbo-miao/hongbomiao.com)** - Code reviews and analytics
- **[Codecov](https://codecov.io/gh/hongbo-miao/hongbomiao.com)** - Code coverage reports
- **[Depfu](https://depfu.com/github/hongbo-miao/hongbomiao.com?project_id=29781)** - Dependency monitoring
- **[FOSSA](https://app.fossa.io/projects/git%2Bgithub.com%2Fhongbo-miao%2Fhongbomiao.com)** - License compliance
## Design
- **Fusion 360** - Industrial design
- **Blender** - 3D graphic design
- **Figma** - UX design
## Bots
- **Renovate** - Dependency updating
- **CodeReview BOT** - Code reviewing
- **Mergify** - Automatically merging
- **Stale** - Stale issues and pull requests closing
- **ImgBot** - Image compression
- **semantic-release** - Version management and package publishing
## Testing
- **Unit testing**
- **Snapshot testing**
- **Visual testing**
- **Instrumented testing**
- **Smoke testing**
- **Sanity testing**
- **Compatibility testing**
- **Integration testing**
- **End-to-end testing**
- **Contract testing**
- **Mutation testing**
- **Performance testing**
- **Permutation testing**
- **Holdout testing**
- **Bias testing**
- **Duck testing**
- **Bus testing**
- **Load testing**
- **Durability testing**
- **Fault injection testing**
- **Parallel testing**
- **Acceptance testing**
- **Model-in-the-loop (MIL) testing**
- **Hardware-in-the-loop (HIL) testing**
- **Environmental testing**
- **Vibration testing**
- **Shock testing**
- **Drop testing**
- **Temperature testing**
- **Humidity testing**
- **Altitude testing**
- **Icing testing**
- **Rain testing**
- **Fungus testing**
- **Salt fog testing**
- **Lightning testing**
- **Structural testing**
- **Battery drop testing**
- **Battery vibration testing**
- **Dyno testing**
- **Flammability testing**
- **Wind tunnel testing**
- **Ground testing**
- **Flight testing**
## Languages
- **C**
- **C++**
- **Embedded C**
- **PsyC**
- **CSS**
- **Docker**
- **Go**
- **GraphQL**
- **HCL**
- **HTML**
- **Java**
- **Kotlin**
- **Scala**
- **JavaScript**
- **TypeScript**
- **Makefile**
- **Markdown**
- **MATLAB**
- **Protocol Buffers**
- **Python**
- **QML**
- **Rego**
- **Ruby**
- **Rust**
- **Shell**
- **Solidity**
- **SQL**
- **LogQL**
- **PromQL**
- **SedonaSQL**
- **Spark SQL**
- **Snowflake SQL**
- **Swift**
- **VHDL**
- **XML**
- **YAML**
## Network
### Network Programmability
- **P4** - Programming Protocol-independent Packet Processors
### Communication Standards
- **Open Systems Interconnection (OSI) model**
- Layer 1: Physical layer
- Serial protocols
- **Inter-Integrated Circuit (IΒ²C)**
- **Serial Peripheral Interface (SPI)**
- **Controller Area Network (CAN)**
- Layer 2: Data link layer
- Ethernet
- Wi-Fi
- Layer 3: Network layer
- **The Internet Protocol (IP)**
- **IPv4**
- **IPv6**
- Time protocols
- **Network Time Protocol (NTP)**
- **Precision Time Protocol (PTP)**
- **IRIG-B Time Protocol**
- Layer 4: Transport layer
- **User Datagram Protocol (UDP)**
- **Transmission Control Protocol (TCP)**
- **QUIC**
- Layer 5: Session layer
- **WebSocket**
- **Web Real-Time Communication (WebRTC)**
- Layer 6: Presentation layer
- **Remote Procedure Call (RPC)**
- RPC frameworks
- **Apache Avro**
- **Apache Thrift**
- **gRPC Remote Procedure Calls (gRPC)**
- Binary data serialization formats
- **Avro**
- **Thrift**
- **Protocol Buffers (Protobuf)**
- Layer 7: Application layer
- **Hypertext Transfer Protocol (HTTP)**
- **Hypertext Transfer Protocol Secure (HTTPS)**
- **HTTP/0.9** - TCP/IP
- **HTTP/1.0** - TCP/IP
- **HTTP/1.1** - TCP/IP
- **HTTP/2** - TCP/IP
- **HTTP/3** - QUIC + UDP
- File transfer protocols
- **File Transfer Protocol (FTP)**
- **Secure File Transfer Protocol (SFTP)**
- **Server Message Block (SMB)**
- **Web Distributed Authoring and Versioning (WebDAV)**
- Email protocols
- **Post Office Protocol (POP)**
- **Simple Mail Transfer Protocol (SMTP)**
- **Internet Message Access Protocol (IMAP)**
- **MQTT**
### Wireless Network Standards
- **1G**
- **2G**
- **3G**
- **3.9G** - Long-Term Evolution (LTE)
- **4G** - Long-Term Evolution (LTE) Advanced
- **4.5G** - Long-Term Evolution (LTE) Advanced Pro
- **5G** - 5G New Radio (NR)
- **5.5G** - 5G Advanced
- **6G**
## Guidelines
- **Avionics Systems**
- **DO-178C** - Software considerations in airborne systems and equipment certification
- **DO-254** - Design assurance guidance for airborne electronic hardware
- **ARP4754A** - Guidelines for development of civil aircraft and systems
- **DO-160G** - Environmental conditions and test procedures for airborne equipment
- **DO-331** - Model-based development and verification supplement to DO-178C and DO-278A
- **DO-330** - Software tool qualification considerations
- **Drone Systems**
- **Pixhawk standards** - Hardware specifications and guidelines for drone systems development
- **Automotive Systems**
- **ISO 26262** - Road vehicles β functional safety
- **AUTOSAR** - Automotive open system architecture
- **Industrial Robot Systems**
- **ISO 10218** - Robots and robotic devices β safety requirements for industrial robots
- **ANSI/RIA R15.06-2012** - Industrial robots and robot systems β safety requirements
# π Highlights
## Simulation
### AnyLogic - Simulation Modeling Tool
The following presents a model of a radar-based air defense system. Bombers are dispatched to destroy ground facilities, while the buildings are safeguarded by the air defense system, comprising two radars equipped with guided surface-to-air missiles.
![AnyLogic screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/dc2c8c2e-8acc-4df5-8a1a-fdf1da7c6f43)
### NI LabVIEW - Graphical Programming Environment
![NI LabVIEW screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/acf44d58-a3f4-433b-9045-f4d913b05dfd)
### NI VeriStand - Real-Time Testing and Simulation
![NI VeriStand screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/dc7d0c92-7d55-4251-9d39-c53eaac699e2)
### CoppeliaSim - Robot Simulation
![CoppeliaSim screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/e167e2b9-6428-40c2-a1d9-377eb630a991)
### OpenFOAM - Computational Fluid Dynamics (CFD)
OpenFOAM simulation results viewed by ParaView.
![OpenFOAM screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/02ebf178-b8fd-48bc-a12b-c1739f435858)
### SimScale - Computational Fluid Dynamics (CFD), Finite Element Analysis (FEA), Thermal Simulation
![SimScale screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/953ec6ed-201e-4e59-bb43-f77c385d4054)
### AeroSandbox - Aircraft Design and Optimization
![AeroSandbox screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/b64356f4-fc8a-4fa8-9b8a-b752f5570b32)
### MATLAB
#### 5G Toolbox - 5G Communications Systems Simulation, Analysis, and Testing
![5G Toolbox screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/acd927ee-3296-4139-9ea6-1ddcb2cb0e96)
#### Aerospace Toolbox - Aerospace Vehicle Motion Analysis and Visualization
![Aerospace Toolbox screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/7f84f5d5-4a85-4bcd-97e3-7c5f853f03c0)
#### Automated Driving Toolbox - ADAS and Autonomous Driving Systems Design, Simulation, and Testing
![Automated Driving Toolbox screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/687b55f2-145e-4197-a213-ac2c51f113d4)
#### Bioinformatics Toolbox - Genomic and Proteomic Data Analysis and Visualization
![Bioinformatics Toolbox screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/cee09bb5-4633-4e81-82c7-d2dbcf99e49b)
#### Lidar Toolbox - Lidar Processing Systems Design, Analysis, and Testing
![Lidar Toolbox screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/32796b6c-330d-4da3-9fcb-c3cfd78ca50f)
#### Satellite Communications Toolbox - Satellite Communications Systems Simulation
![Satellite Communications Toolbox screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/693e5605-de66-4dd4-9ab5-47e713f6dbc1)
#### Simscape - Multidomain Physical Systems Simulation
![Simscape screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/53574809-fe05-46c3-b2fa-633b5516b2e0)
## Embedded, IoT, Hardware
### ASTERIOS - Real-Time, Safety-Critical Applications Development
![ASTERIOS screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/716ac0aa-7087-4507-8a63-619bc7c01e64)
### RTI Connext - Real-Time, Distributed Systems Framework
![RTI Connext screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/3022ac89-a5d6-4bf6-a5cc-f6ad14d74f61)
### ROS - Robot Operating System
![ROS screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/4e4ab425-53a1-428d-abb9-408eb48553da)
![ROS screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/6728d19c-9f04-4ec9-a603-46fd8ee0e2b0)
### PX4 - Flight Control Software
![PX4 screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/715acd1d-a5e3-428c-a3b4-97be2700c4f5)
### OpenSCAD - 3D CAD Modeller
The toroidal propeller allows a small multirotor aircraft to operate more quietly than the ones that use traditional propellers.
![OpenSCAD screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/00b3e679-66a7-4d9c-8d68-c31c124e0a54)
### VHDL - Very High Speed Integrated Circuits Program (VHSIC) Hardware Description Language
The VHDL waveforms are displayed in GTKWave.
![VHDL screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/8bafe459-24f5-4751-bae5-5a2b97688f2f)
### Poky - Reference Linux Distribution of the Yocto Project
![Poky screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/fcb5650c-a33b-4564-ba9e-bca0a666b1a2)
## Database, Data Warehouse, Data Lakehouse
### Dgraph - Distributed Graph Database
![Dgraph screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/b0e4642d-ad8b-4ce1-a87d-c766f0292ae8)
### Redis with RedisGraph Module
![Redis screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/c366b78c-90e2-441a-943b-4be59e0bea6c)
## Data Cleaning
### Dataprep - Data Cleaning
![Dataprep screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/0fea3642-3c55-4f6a-94f3-e62faa41be2a)
## Data Orchestration
### Prefect - Orchestration Platform
![Prefect screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/7880b5a4-9b0b-40c8-ad35-a3e5e26da0aa)
### Airflow - Orchestration Platform
![Airflow screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/449d08dc-08fe-4646-bf7e-8d1f6eb246ee)
## Data Processing
### Flink - Data Processing
![Flink screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/df4d0cd7-86da-4682-b097-88ca7ee1b7a7)
## Machine Learning
### Vertex AI - AutoML
![Vertex AI screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/96afa9b3-5393-487d-9eca-8251110f5ddf)
![Vertex AI screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/902f0d1d-50e8-4e13-91ed-3fa6445c6d81)
![Vertex AI screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/91edf48a-994b-4de2-bcd5-aeb38059dfd7)
### Kubeflow - Machine Learning Platform
![Kubeflow screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/0de50151-9d5d-4239-82de-93bf2eed1169)
### Contextual AI assistant
Chatbot on Telegram powered by Rasa.
![Telegram screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/14374215-ec31-43d0-be25-dc59b0c9c70e)
### Weights & Biases - Machine Learning Experiment Tracking
[Distributed hyperparameter optimization result](https://wandb.ai/hongbo-miao/graph-neural-network/sweeps/p0fgtvcf) by Weights & Biases.
[![Weights & Biases screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/0fb8e396-94e0-47ad-80e2-517dfa191eed)](https://wandb.ai/hongbo-miao/graph-neural-network/sweeps/p0fgtvcf)
## Computer Vision
### PyVista
![PyVista screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/705509be-4272-4d56-8080-9d91123c56ba)
### Open3D
![Open3D screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/f4c6dca1-b0c1-4370-9c78-bef12bc70218)
## Computing
### Ray - Distributed Computing
![Ray screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/a7d77743-2a96-4fb0-b075-d2ec48ab655a)
## Cloud Native
### Pixie - Kubernetes Application Observing
![Pixie screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/d3ea9059-45f3-4ee3-8664-bcf167e9eea6)
![Pixie screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/e0622e37-bb50-46d9-a572-8f76e717247c)
![Pixie screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/05ab9c40-cb6e-4872-938b-b6e03745b1f5)
![Pixie screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/fb2b47c0-a6de-4957-af7f-0fd90d09c7a2)
### Linkerd - Service Mesh
![Linkerd screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/a0f0dae6-6df4-4813-8035-cc21dcc04059)
### Hasura - GraphQL Engine
![Hasura GraphQL Engine screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/7b31aa59-1185-48f6-bb16-ea802bca7ba1)
### Traefik - Reverse Proxy and Load Balancer
![Traefik screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/963117c7-7aee-4994-8f12-d4fb70b0e66d)
### Netdata - Distributed Monitoring Platform
![Netdata screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/f1e51bd2-474b-4711-a669-9148baed2013)
### Elastic APM - Application Performance Management
![Elastic APM screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/68037cc6-2368-437c-8f2d-f49e3935be4d)
### Jaeger - Distributed Tracing
![Jaeger screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/b384c102-d392-4116-aa16-d08fcfb9ab58)
### Grafana - Data Visualization
#### Data Source: Prometheus - Time-Series Database
![Grafana - Prometheus screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/9182c9ae-1a94-47c0-9a0d-a80f14395d8d)
#### Data Source: Loki - Log Aggregation System
![Grafana - Loki screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/36ee4b6b-7d89-4ad7-8fc9-cc8d8b1802bc)
### Kibana - Elasticsearch Visualization
![Kibana screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/160f8d1b-6f2b-4e18-af35-c6081612eeff)
### Tableau - Data Visualization
![Tableau screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/c2f7b368-9b2c-4d69-a422-31779269097d)
## Testing
### Locust - Load Testing
![Locust screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/bbec7be9-b7b8-418c-9c18-badba9a3e6e0)
## Ops
### Argo CD - GitOps
![Argo CD screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/b01c712f-488c-4298-91f7-604728bbaeea)
### Discord - ChatOps
![Discord screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/8824ac14-4d8b-4a64-9099-0fd7ecf461d3)
### Rancher - Kubernetes Container Management
![Rancher screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/559175fc-c7a0-40f1-9052-5534548e2e7c)
### Kubecost - Kubernetes Cost Monitoring
![Kubecost screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/a9c0398a-cb97-4d60-ad48-dce7d2bdcf52)
### Polaris - Kubernetes Best Practices Validation
![Polaris screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/1eb685ce-d79d-49af-a308-0e84c4076172)
### Goldilocks - Kubernetes Resource Requests Recommendation
![Goldilocks screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/68d82f43-a4f0-41c5-8e94-87864bed4795)
## Web
### HTTP/3
The website [supports HTTP/3](https://www.http3check.net/?host=hongbomiao.com).
[![HTTP/3 screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/fc3018df-74e9-4a0a-b8dc-b298eee69708)](https://www.http3check.net/?host=hongbomiao.com)
### AVIF
Images on the website are using AVIF format.
The WebP is almost half the size of JPEG, and AVIF is under half the size of WebP.
### Security
Below is the website [security report](https://observatory.mozilla.org/analyze/www.hongbomiao.com) generated by Mozilla Observatory.
[![Mozilla Observatory screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/5b50746f-8f26-4b1f-aa40-898b47073a5c)](https://observatory.mozilla.org/analyze/www.hongbomiao.com)
### Profiling
Profiling result by Clinic.js and autocannon.
![Profiling screenshot](https://github.com/hongbo-miao/hongbomiao.com/assets/3375461/7e498a57-2c86-4762-8f5b-70af2054d2a7)