Plutonic Rainbows

Bleu de Chanel L'Exclusif

Chanel's latest release, Bleu de Chanel L'Exclusif, officially launched on August 26, 2025, represents the most mysterious and intense expression of the iconic Bleu de Chanel lineage. Created by Olivier Polge as an Extrait de Parfum, this ambery-aromatic composition centers around New Caledonian sandalwood, resinous cistus labdanum, amber, and leather notes that create a warm, dense fragrance sitting closer to the skin than its predecessors. Opening with the familiar citrus blast of the Bleu de Chanel line, it quickly evolves into something more sophisticated as the labdanum becomes dominant, creating a smooth, incense-like presence with markedly improved longevity over the Parfum version.

The fragrance community's response has been mixed but generally positive, with reviewers praising its refinement while questioning its necessity within the existing ecosystem—one critic called it "the best designer release of 2025," though others find it redundant to the Parfum. At $205 for 60ml and $275 for 100ml, the pricing has drawn criticism, but the consensus suggests L'Exclusif successfully targets a more mature demographic seeking a sophisticated, grown-up interpretation of the Bleu de Chanel DNA.

CSS Optimization

I took a closer look at the blog's CSS today and noticed it had accumulated quite a bit of unused code over time. There were several classes like .highlight and .responsive-image that weren't actually being used anywhere, along with styles for HTML elements like abbr and dt that don't appear in any of the posts or templates.

After carefully going through and removing the unused bits, I found there were also some redundant font-family declarations scattered throughout — the same font was being specified multiple times when it only needed to be set once. I also spotted some performance-related CSS properties that seemed unnecessary for a simple static blog.

The cleanup managed to reduce the stylesheet from about 5KB down to 3.7KB, which is roughly a 27% reduction. Nothing looks different on the actual site, which was the goal — just cleaner code behind the scenes.

It's interesting how CSS can grow like this in any project that evolves over time. Features get added and refined, but the old styles often stick around even when they're no longer needed. Probably worth doing this kind of review more regularly to keep things tidy.

Study Plan

I'm working on an eight-month study plan to prepare for potential postgraduate study in AI. The plan starts with foundational reading including Bostrom's Superintelligence, Brian Christian's The Alignment Problem, and Melanie Mitchell's Artificial Intelligence: A Guide for Thinking Humans. This initial phase aims to provide context around ethical considerations and societal implications before tackling more technical material.

The next phase focuses on machine learning fundamentals through resources like Goodfellow's Deep Learning, Bishop's Pattern Recognition and Machine Learning, and fast.ai's practical tutorials. I hope to then explore natural language processing using Jurafsky and Martin's Speech and Language Processing, along with some hands-on projects involving language models and transformers, areas that might complement my linguistics background. The final months would revisit AI safety and governance topics while working on practical applications. The goal is to develop a basic understanding across theory, implementation, and ethical considerations.

Commissioner Font

Today I've updated the blog's typography system, migrating from a dual-font approach to Google Fonts Commissioner. This change brings a more unified visual identity while maintaining the readability improvements from the recent typography scaling updates.

Commissioner is a low-contrast humanist sans-serif with almost classical proportions, designed as a variable font. What makes it particularly appealing is its versatility — the variable weight axis allows smooth transitions from 100 to 900, though I'm using a focused range of 400-700 for optimal web performance. The humanist design provides excellent readability for extended reading sessions, while the variable weights give precise control over text hierarchy.

The previous system used Work Sans for body text and Montserrat for headings, which worked well but required loading two separate font families. By consolidating to Commissioner, I've reduced the number of font files while gaining more flexibility through the variable font technology. Body text renders at weight 400, while headings use weight 600, creating clear visual distinction without the need for separate typefaces.

Importantly, this update preserves all the responsive typography improvements implemented yesterday. The fluid clamp() scaling continues to ensure that headings guide rather than dominate, with smooth size transitions across all viewport widths. Commissioner's character fits naturally into these proportions, maintaining the balanced visual hierarchy that makes the content comfortable to read on any device.

From a technical perspective, the implementation uses Google Fonts' CSS API with automatic font-display: swap for optimal loading performance. The variable font format means a single WOFF2 file can handle all weight variations, reducing total download size compared to loading multiple static font files. This efficiency gain becomes more significant as the blog continues to grow.

Blog Update 3

Second and final phase of the 2025 improvements is now done.

I worked through the 18 improvements identified in my blog’s health check report, turning it into a more efficient and reliable static site generator. This included performance enhancements such as chunked file reading with 8KB chunks to prevent memory issues, concurrent processing with a ThreadPoolExecutor using 4 workers, and a markdown caching system that stores 604 posts for faster rebuilds. I also reduced storage needs by converting images to WebP and using batch processing, bringing the size down from 8.5MB to 2.14MB. Other updates included retry logic and connection pooling for network stability, progress bars for user feedback, and additional logging options with verbose and debug modes.

These changes brought the build times down by 41%, from 11.53 seconds to 6.82 seconds, while keeping everything compatible with existing workflows. I also improved the codebase by adding type hints, removing duplicate code, and creating utility scripts for image handling and progress tracking. The deployment system now has retry mechanisms for temporary failures and more efficient CloudFront configurations with specific path invalidations.

Overall, the updates make the blog faster, more efficient, and easier to maintain, while keeping the original functionality intact. Each change was implemented with the goal of making the system more dependable and user-friendly for long-term use.