
AWS serverless video on demand workflow
A practical look at a serverless AWS video pipeline that turns private recordings into HLS playback through MediaConvert, S3, Lambda, EventBridge, and CloudFront.
Writing about technical challenges, life lessons, and the things that keep me overthinking. Like a blog, but with a cooler name.

A practical look at a serverless AWS video pipeline that turns private recordings into HLS playback through MediaConvert, S3, Lambda, EventBridge, and CloudFront.

Oracle trades at a deep discount to its intrinsic value despite high debt and negative free cash flow from AI infrastructure investments

How three standalone tools, the Equity Valuation Engine, Equilyze, and Pressroom, turn a stock ticker into a finished article.

Build a local LangChain chat project with Ollama, from environment setup to a working terminal conversation loop.

Years of conservative investing led me to build a Python engine for studying company valuations with visible assumptions, model checks, and limits.

One missed bargain became MLScraper, a Python service that watches four stores, preserves price history, and treats unreliable pages with care.

A personal site built after a layoff grew into an Astro portfolio and publishing platform with an inspectable static-first system.

A unified benchmarking pipeline that deploys Online Boutique locally, on GCP, and on AWS, collects metrics, persists cloud history to BigQuery, and serves results in Grafana and a portable HTML dashboard.

A spec-driven blueprint for building infrastructure intelligence with LangGraph, Prometheus, and Claude Sonnet. Learn how seven markdown files become a working AI agent.

A complete walkthrough for setting up a Google Cloud account, configuring GitHub Actions OIDC auth, and running your first automated benchmark with SiliconBoutique.

The story behind my website and what you can expect to find here.

An academic writing platform introduced me to software architecture and placed second among 40 projects after I built it on my own.

Learn how historical signals, configured limits, and scenario policy become Bear, Base, and Bull paths without pretending to predict.

Match DCF, multiples, dividends, assets, and reverse DCF to the financial shape of a business before trusting any estimate.

Build a discounted cash-flow valuation, inspect its sensitivity, and reverse the calculation to understand market-implied expectations.

Trace the architecture behind data fields, diagnostics, suitability, valuation managers, CLI output, JSON, and tests before adding features.

Install the equity valuation engine, run one ticker, and learn to read suitability checks, scenarios, skipped models, and JSON.

Compare P/E, EV/EBITDA, P/S, ROE, DDM, and NAV through independent examples, and learn why every model needs its own guardrails.

Interpret scenario rows, skipped models, the equal-weight composite, model dispersion, and JSON without turning output into a target price.

Follow provider data into StockMetrics, learn what missing-value diagnostics preserve, and see which gaps can still mislead a model.

Follow one illustrative Amazon Mexico watch from YAML and URL preview to saved product history, runtime health, and a later price alert.

Why the journal has a static-first ECharts path for data visuals, how it differs from Mermaid, and how the section is organized.

A published ECharts example page showing common, dense, hierarchical, flow, distribution, and finance chart options in MDX.

One option object becomes an accessible static SVG, an optional file asset, or a chart that hydrates only when the article requests it.

Learn how MLScraper chooses HTTP or browser fetching, protects history after incomplete pages, and slows the right scope after failures.

Learn how MLScraper turns stable job identity and provider options into validated store routes, predictable storage paths, and safe previews.

Run MLScraper locally, diagnose health and saved state, exercise its offline tests, and extend the provider contract without runtime leaks.

Follow one stable product identifier through updates, temporary absence, recovery, JSON persistence, and MLScraper price-drop alerts.

Compare four ecommerce page formats and learn how MLScraper isolates store-specific URLs and parsing behind one product contract.

See how FastAPI starts MLScraper, provider loops share concurrency safely, and health turns background work into observable state.

A map of the site's visual system across Tailwind tokens, DaisyUI themes, CSS partials, SVG icons, parallax, and UI rules.

One ordered CSS manifest makes the cascade inspectable across Tailwind, DaisyUI, project tokens, shared components, and page rules.

A semantic color token travels from DaisyUI's OKLCH themes through Tailwind utilities, component surfaces, and Mermaid palettes.

The Atlas hero keeps its content in Astro markup while CSS owns depth, narrow viewport cropping, and reduced motion behavior.

Three SVG paths cover typed controls, file-loaded skill marks, and generated ribbons, each with a different trust boundary.

A concise contributor guide for building UI with semantic tokens, consistent spacing, responsive rules, and accessible overlays.

A short guide to the repository shape, local development environment, and Cloudflare deployment target behind albertoduran.com.

The deployment artifact is a file graph served by Cloudflare Workers Static Assets, with explicit 404 and generated asset behavior.

The devcontainer standardizes Node 22 and editor tooling while leaving dependency replay, network access, and production checks explicit.

One publication change crosses content, manifest, route, layout, runtime, and style boundaries that keep the repository understandable.

Why Mermaid diagrams render at build time through a custom Astro integration, external browser service, and static SVG assets.

One diagram produces themed SVG files and runtime metadata tied to a renderer version.

The repository defines a batch renderer contract but cannot verify the external Worker's source, deployment, fonts, or production telemetry.

Publishable Markdown files prepare diagrams with one build-scoped coordinator that handles cache lookup, batch rendering, and asset emission.

Provider selection contains build failures across an external batch Worker, a public mermaid.ink fallback, and deterministic fixtures.

Serializable Mermaid variables carry the site's semantic palettes across a renderer boundary without claiming unmeasured contrast.

An SVG compiler pass removes scripts, cleans selected styles, rewrites IDs, scopes CSS, and merges light and dark renderer output.

The site moves work into the build, but its current evidence covers artifacts and behavior rather than Web Vitals or navigation timing.

A deterministic build shows what each optimizer changes and exposes the JavaScript chunk warning that still needs a measured budget.

Images and fonts receive different loading treatment according to their role, with explicit priorities and an honest measurement gap.

Static links gain prefetching, document swaps, and theme lifecycle hooks, though the repository has no navigation timing baseline yet.

The publication system behaves like a compiler whose policy stages turn MDX candidates into routes, navigation, and complete article pages.

A fenced sample becomes dual-theme Shiki HTML, a line-numbered component, and markup protected from the production minifier.

The active Zod schema accepts less metadata than the MDX files carry, exposing fields that are unsupported, unused, or only partly wired.

A typed manifest turns a fixture tree into publication policy for vault ownership, ordering, read time, inherited images, and pagination.

Plain MDX syntax and explicit component imports follow different paths into the article's headings, tables, code, diagrams, and charts.

One published entry travels through static path generation and a thin catch-all route into a complete desktop and mobile article shell.

The quality system matches evidence to risk while naming its missing lint, coverage threshold, cross-browser, and accessibility gates.

Chromium tests verify selected reader behaviors while leaving Axe rules, screen readers, reduced motion, Firefox, and WebKit uncovered.

Focused regression stories show how unit tests catch draft leaks, SVG ID collisions, unsafe chart options, and damaged generated markup.

Diagnostics, unit tests, a deterministic build, and Chromium preview checks each cover a different failure class in the CI sequence.

Browser modules own preference, viewport, focus, scroll, and local time while the static build remains responsible for readable content.

An unstable ESPN page feeds build-time Atlas data, deterministic fixtures protect tests, and the browser localizes the rendered match time.

An already-rendered diagram gains theme-aware asset links and disposable popover expansion without shipping Mermaid to the browser.

A heading list becomes reliable scroll navigation only after accounting for sticky offsets, page edges, clicks, and route cleanup.

A checkbox-based overlay provides the static baseline, then browser code adds focus control, Escape handling, and scroll containment.

Theme correctness has three deadlines around first paint, user choice, and Astro route swaps, each owned by a different layer.

A detailed look at how Sin Pluma's React SPA is structured: Redux state, HOC-based auth guards, Axios interceptors, Slate.js rich text editor, and backend service integration patterns.

A detailed walkthrough of every service in the Sin Pluma system, how Docker networks isolate them, the data flows behind key operations, and the architectural strengths and constraints.

How Sin Pluma's Flask API is structured: the app factory pattern, blueprint organization, full endpoint inventory, Marshmallow validation, and integrations with MySQL, Redis, and MinIO.

How Sin Pluma bootstraps a three-node MySQL InnoDB Cluster, handles automatic failover, manages the schema, and what production hardening looks like beyond the demo environment.

A detailed walkthrough of Sin Pluma's JWT implementation: token structure, full lifecycle, the Redis blacklist, the Axios refresh queue, storage trade-offs, and security best practices.