|
Career levels: L1 to L7
|
|
Minimal and non-root user in container images
|
|
Obsessing over tooling
|
|
Allow yourself to duplicate code
|
|
Organisation mailing groups
|
|
The API misnomer: What it has got to do with web development?
|
|
Policy, procedure, standard, and guideline
|
|
Terraform data source vs remote state
|
|
Thick JavaScript clients and JSON APIs may not be the answers
|
|
Hypermedia and HTML
|
|
Visualising the pieces in AWS SSO
|
|
For developer: Getting started on GA4 and GTM
|
|
What is AppSec
|
|
Installing PostgreSQL extensions on GitHub Actions
|
|
Receiving emails with Google Workspace, Migadu, Amazon SES, and Microsoft Outlook
|
|
When do you need MX, SPF, DKIM, and DMARC
|
|
Squash to latest commit with `git commit --amend`
|
|
Use your macOS system Python
|
|
Becoming a senior in your career
|
|
Firefox with zero browsing history
|
|
Go: Can't evaluate struct methods in templates
|
|
The role of a Security Engineer
|
|
Kubernetes Ingress as load balancer
|
|
Kubernetes Service and kube-proxy
|
|
Ordering HTTP mirrors in Maven 3.8.x
|
|
Migrating website domain
|
|
Primer on Google Cloud Platform IAM
|
|
Team, Project, and Product Managers
|
|
Queue or Pub/Sub
|
|
Two meanings of OIDC in AWS EKS
|
|
Bootstrapping your own domain
|
|
Apex domains and DNS zones
|
|
Enforcing HTTPS for 302 redirect on AWS ALB and Nginx
|
|
The bytes in little endian
|
|
Complementing Vim with Visual Studio Code
|
|
Go local variable shadowing
|
|
Lamenting the web dominated by JavaScript
|
|
Prematurely optimising website performance by almost 5x
|
|
How to manage SSH keys
|
|
On AWS Config Custom Rule, and its friends
|
|
Landing Page With Amazon S3, CloudFront, AWS Certificate Manager
|
|
Amazon S3 Block Public Access in layman
|
|
Securing AWS KMS key using key policy and IAM policy
|
|
JavaScript module import hoisting
|
|
How aws-iam-authenticator works
|
|
A new tech blog
|