# Pino Labs > Developer blog from Piotr Nowak, Senior .NET & Azure Architect. Notes on Optimizely DXP, headless CMS, Azure infrastructure, and pragmatic .NET engineering - what worked, what broke, and what to do differently. ## About - [About Piotr Nowak](https://pino-labs.com/about/): Background, expertise (Optimizely DXP, Azure, .NET), certifications, and contact. ## Blog posts - [What Your Optimizely DXP Is Serving to AI Crawlers - and the Three Levers You Actually Have](https://pino-labs.com/blog/optimizely-dxp-ai-crawlers-three-levers/): Unblocked bot traffic on Optimizely DXP is a billable page view, and the Cloudflare zone managed by Optimizely is not yours to configure. Three levers remain: robots.txt, Optimizely Support, and bringing your own Cloudflare zone (Orange-to-Orange) for AI Crawl Control. Plus the trap in Cloudflare's July 2026 change: from 15 September, blocking Training also affects mixed-purpose crawlers such as Googlebot, Applebot and BingBot. (2026-08-17) - [Sovereign AI for Support in CMS 13, Part 1: Bielik vs the Global Model](https://pino-labs.com/blog/sovereign-ai-part1/): A pre-registration, published before the data exists. A 3-arm test on Optimizely Feature Experimentation asks whether any AI assistance beats keyword search - and whether Bielik, a self-hosted sovereign Polish 11B model, can match a hosted global model on the same prompt, retrieval and corpus. The method is frozen with a hash; a one-day dress rehearsal on real hardware (Bielik-11B on an A100 vs gpt-4o-mini on Azure OpenAI) already produced the first latency, token and cost numbers - and one genuine config bug. (2026-07-22) - [Content Variations in CMS 13, Part 3: Audiences vs Audiences - Same Word, Two Engines](https://pino-labs.com/blog/content-variations-cms-13-part-3-audiences/): Part 2 ran the experiment against Everyone. Part 3 wires the same Content Variations to two different audience engines - CMS Audiences and FX Audiences - measures what each one actually does, and finds the boundary where a personalized block vanishes from Optimizely Graph entirely. (2026-06-14) - [Content Variations in CMS 13, Part 2: Giving the Quiet Hero a Stats Engine](https://pino-labs.com/blog/content-variations-cms-13-part-2-experimentation/): Part 1 made the case for Content Variations. This is the follow-up: wiring them to Feature Experimentation, proving the 33/33/34 split actually holds, and serving the same experiment from an MVC head and a headless Next.js head with zero coordination code. (2026-06-11) - [Content Variations: Optimizely CMS 13's Quiet Hero](https://pino-labs.com/blog/content-variations-cms-13-quiet-hero/): Notes on the CMS 13 feature that didn't get the keynote, but probably should have plus where the sharp edges are and how we wrapped them. (2026-06-07) - [Migrating large solutions to Optimizely CMS 13: the add-on ecosystem is catching up fast](https://pino-labs.com/blog/migrating-large-solutions-optimizely-cms13-addon-ecosystem/): Field notes from a live CMS 12 to CMS 13 and .NET 10 upgrade: the ecosystem is moving fast, with key add-ons already shipped and most blockers now in active upgrade branches. (2026-06-01) - [A .NET 8 → 10 migration that taught me to read the dependency graph first](https://pino-labs.com/blog/dotnet-8-to-10-migration-dependency-graph/): Dozens of projects, clean build, green tests. The real work wasn't the framework jump-it was the dependency graph. Lessons on old hacks, transitive dependencies, and why 'new' isn't always the goal. (2026-05-27) - [Two weeks into a CMS 12 → 13 migration](https://pino-labs.com/blog/two-weeks-cms-12-to-13-migration/): Honest notes from the field: the platform is solid, but migration complexity lives in the ecosystem, not the core. Database collation, legacy validators, third-party packages-the real work. (2026-05-08) - [64 Websites Live on Headless Optimizely with GraphQL](https://pino-labs.com/blog/64-websites-headless-optimizely-graphql/): Major rollout for Digital Experience Platform complete. Product navigation working harder, documentation downloads up, dealer traffic growing. (2026-03-13) - [Moving Beyond "Lift and Shift": Lessons from an Optimizely DXP Migration](https://pino-labs.com/blog/moving-beyond-lift-and-shift-dxp-migration/): Successfully migrated from legacy Windows to Optimizely DXP Cloud-native Linux. Cross-platform compatibility, WAF rules, and Infrastructure as Code. (2026-02-14) - [Migrating a Multi-Brand Platform to Headless Optimizely on Azure](https://pino-labs.com/blog/rockworld-2-strategic-system-migration/): A full migration of a large multi-brand estate off a legacy CMS onto headless Optimizely, GraphQL and Next.js on Azure - with Front Door routing brands across incrementally instead of a big-bang switch. (2025-06-14) ## Feeds - [RSS feed](https://pino-labs.com/rss.xml) - [Sitemap](https://pino-labs.com/sitemap.xml)