- LeetCode 33 – Search in Rotated Sorted Array
A rotated array is not sorted, so binary search should not work on it. It does, because however you cut it in half at least one half is properly sorted — and telling which is a single comparison. Why that comparison needs <= and not <, the overflow-safe midpoint, and why the duplicates variant provably degrades to O(n).
- Oracle Database – Run It Locally with Docker
Oracle Database Free in a container: the image to pull, the three environment variables that matter, how to tell when the database is genuinely ready, and why you must connect to the FREEPDB1 service rather than FREE. Includes a docker-compose file with schema init scripts, and the gotchas on Apple Silicon.
- AWS – ECS: Running Containers Without Kubernetes
ECS in the three nouns it actually has — task definition, service, cluster — and why Fargate means you never touch an EC2 instance again. A task definition for the StayHub API, the service that keeps two of them running behind a load balancer, and rolling deploys with circuit breaker rollback. Plus the two things that make a task die on startup with no useful log: the execution role and the log group.
- Oracle Database – Introduction
Oracle Database is what you meet the moment you work on anything old and important. Instance versus database, the tablespace-to-block storage hierarchy, CDB and PDB, which edition to install, and a table of every place Oracle behaves differently from MySQL and Postgres — a user is a schema, an empty string is NULL, and a DATE carries a time.
- LeetCode 31 – Next Permutation
A problem you either see or you do not — no data structure, no recursion, just three passes in the right order. It starts from one observation: a descending suffix is already maximal, so the change has to reach further left than it goes. Finding the pivot, why scanning from the right finds the smallest larger value for free, and why reversing beats sorting the suffix.