<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Advent Calendar on HomelabPro Blog</title>
    <link>/tags/advent-calendar/</link>
    <description>Recent content in Advent Calendar on HomelabPro Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-gb</language>
    <lastBuildDate>Thu, 25 Dec 2025 07:00:00 +0800</lastBuildDate><atom:link href="/tags/advent-calendar/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Advent Calendar Bonus Day: Merry Christmas!</title>
      <link>/posts/2025-12-25-advent-day25/</link>
      <pubDate>Thu, 25 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-25-advent-day25/</guid>
      
      <description>&lt;h2 id=&#34;bonus-day-25-merry-christmas-&#34;&gt;
  Bonus Day 25: Merry Christmas! 🎄
  &lt;a class=&#34;anchor-head&#34; href=&#34;#bonus-day-25-merry-christmas-&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;If you&amp;rsquo;ve been following along with the Advent Calendar series, thank you.&lt;/p&gt;
&lt;p&gt;I really appreciate every read, share, comment, and message throughout December. I hope you picked up a few useful tips along the way, and that it sparked some ideas for your own environments.&lt;/p&gt;
&lt;div class=&#34;advent-day25&#34; style=&#34;display:flex; justify-content:center;&#34;&gt;
  &lt;figure style=&#34;margin: 1.25rem 0; width: min(560px, 100%);&#34;&gt;
    &lt;svg
      viewBox=&#34;0 0 640 420&#34;
      role=&#34;img&#34;
      aria-label=&#34;A magical Christmas scene with a decorated tree, falling snow, presents, and an exploding Christmas cracker&#34;
      style=&#34;width: 100%; height: auto; display: block;&#34;
      xmlns=&#34;http://www.w3.org/2000/svg&#34;
    &gt;
      &lt;title&gt;Merry Christmas&lt;/title&gt;
      &lt;desc&gt;A festive animated scene: a Christmas tree with twinkling lights and ornaments, wrapped presents, falling snow, and a Christmas cracker popping open with confetti to reveal &#34;Merry Christmas!&#34;&lt;/desc&gt;

      &lt;defs&gt;
        
        &lt;linearGradient id=&#34;skyGradient&#34; x1=&#34;0%&#34; y1=&#34;0%&#34; x2=&#34;0%&#34; y2=&#34;100%&#34;&gt;
          &lt;stop offset=&#34;0%&#34; style=&#34;stop-color:#1a2a4e;stop-opacity:1&#34; /&gt;
          &lt;stop offset=&#34;100%&#34; style=&#34;stop-color:#2d4a7c;stop-opacity:1&#34; /&gt;
        &lt;/linearGradient&gt;
        
        
        &lt;filter id=&#34;glow&#34;&gt;
          &lt;feGaussianBlur stdDeviation=&#34;3&#34; result=&#34;coloredBlur&#34;/&gt;
          &lt;feMerge&gt;
            &lt;feMergeNode in=&#34;coloredBlur&#34;/&gt;
            &lt;feMergeNode in=&#34;SourceGraphic&#34;/&gt;
          &lt;/feMerge&gt;
        &lt;/filter&gt;

        
        &lt;filter id=&#34;sparkle&#34;&gt;
          &lt;feGaussianBlur in=&#34;SourceGraphic&#34; stdDeviation=&#34;2&#34; result=&#34;blur&#34; /&gt;
          &lt;feColorMatrix in=&#34;blur&#34; mode=&#34;matrix&#34; values=&#34;1 0 0 0 0  0 1 0 0 0  0 0 1 0 0  0 0 0 18 -7&#34; result=&#34;glow&#34; /&gt;
          &lt;feBlend in=&#34;SourceGraphic&#34; in2=&#34;glow&#34; /&gt;
        &lt;/filter&gt;
      &lt;/defs&gt;

      &lt;style&gt;
        .ad25-line { stroke-width: 6; stroke-linecap: round; stroke-linejoin: round; fill: none; }
        
         
        .ad25-green { fill: #2d6e2d; stroke: #1a4d1a; }
        .ad25-dark-green { fill: #1a4d1a; stroke: #0d260d; }
        .ad25-red { fill: #c41e3a; stroke: #8b0000; }
        .ad25-gold { fill: #ffd700; stroke: #daa520; }
        .ad25-brown { fill: #8b4513; stroke: #654321; }
        .ad25-white { fill: #ffffff; stroke: #e0e0e0; }
        .ad25-silver { fill: #c0c0c0; stroke: #a0a0a0; }
        .ad25-blue { fill: #1e90ff; stroke: #1565c0; }
        .ad25-purple { fill: #9b59b6; stroke: #7d3c98; }
        
         
        .ad25-sky { fill: url(#skyGradient); }
        .ad25-snow-ground { fill: #f0f8ff; opacity: 0.9; }
        
         
        .ad25-tree { 
          transform-origin: 210px 310px; 
          animation: ad25TreeSway 4s ease-in-out infinite;
        }
        
        .ad25-star { 
          transform-origin: 210px 86px;
          animation: ad25StarSpin 8s linear infinite, ad25StarPulse 2s ease-in-out infinite;
          filter: url(#glow);
        }
        
         
        .ad25-light { 
          animation: ad25LightPulse 3s ease-in-out infinite;
          filter: url(#glow);
        }
        .ad25-light:nth-child(1) { animation-delay: 0s; }
        .ad25-light:nth-child(2) { animation-delay: 0.2s; }
        .ad25-light:nth-child(3) { animation-delay: 0.4s; }
        .ad25-light:nth-child(4) { animation-delay: 0.6s; }
        .ad25-light:nth-child(5) { animation-delay: 0.8s; }
        .ad25-light:nth-child(6) { animation-delay: 1s; }
        .ad25-light:nth-child(7) { animation-delay: 1.2s; }
        .ad25-light:nth-child(8) { animation-delay: 1.4s; }
        .ad25-light:nth-child(9) { animation-delay: 1.6s; }
        .ad25-light:nth-child(10) { animation-delay: 1.8s; }
        
         
        .ad25-ornament { 
          animation: ad25Twinkle 2s ease-in-out infinite;
        }
        
         
        .ad25-tinsel {
          stroke: #c0c0c0;
          stroke-width: 3;
          fill: none;
          opacity: 0.6;
          animation: ad25Shimmer 3s ease-in-out infinite;
        }
        
         
        .ad25-snow { 
          animation: ad25SnowFall 8s linear infinite;
          opacity: 0.8;
        }
        
         
        .ad25-presents {
          transform-origin: 180px 340px;
          animation: ad25Entrance 1s ease-out 0.2s backwards;
        }
        
         
        .ad25-sky-star {
          animation: ad25SkyTwinkle 3s ease-in-out infinite;
        }
        
         
        .ad25-cracker { transform-origin: 430px 255px; }
        .ad25-center {
          animation: ad25CenterFade 0.65s ease-out 0.5s 1 forwards;
        }
        .ad25-left { 
          transform-origin: 430px 255px; 
          animation: ad25PopLeft 0.65s cubic-bezier(0.2, 0.8, 0.2, 1) 0.5s 1 forwards; 
        }
        .ad25-right { 
          transform-origin: 430px 255px; 
          animation: ad25PopRight 0.65s cubic-bezier(0.2, 0.8, 0.2, 1) 0.5s 1 forwards; 
        }
        
         
        .ad25-confetti &gt; * { 
          opacity: 0; 
          animation: ad25ConfettiFall 2s ease-out 0.55s 1 forwards; 
        }
        
         
        .ad25-sparkle {
          opacity: 0;
          transform-origin: 430px 255px;
          animation: ad25Sparkle 0.6s ease-out 0.5s 1;
          filter: url(#sparkle);
        }
        
        .ad25-msg { 
          opacity: 0; 
          transform: translateY(10px); 
          animation: ad25Reveal 0.8s ease-out 1.2s 1 forwards; 
        }

         
        @keyframes ad25TreeSway {
          0%, 100% { transform: rotate(0deg); }
          25% { transform: rotate(0.5deg); }
          75% { transform: rotate(-0.5deg); }
        }
        
        @keyframes ad25StarSpin {
          from { transform: rotate(0deg); }
          to { transform: rotate(360deg); }
        }
        
        @keyframes ad25StarPulse {
          0%, 100% { opacity: 0.9; }
          50% { opacity: 1; }
        }
        
        @keyframes ad25LightPulse {
          0%, 100% { opacity: 0.4; }
          50% { opacity: 1; }
        }
        
        @keyframes ad25Twinkle {
          0%, 100% { opacity: 0.6; transform: scale(1); }
          50% { opacity: 1; transform: scale(1.1); }
        }
        
        @keyframes ad25Shimmer {
          0%, 100% { opacity: 0.4; }
          50% { opacity: 0.8; }
        }
        
        @keyframes ad25SnowFall {
          from { transform: translateY(-10px); opacity: 0; }
          10% { opacity: 0.8; }
          90% { opacity: 0.8; }
          to { transform: translateY(420px); opacity: 0; }
        }
        
        @keyframes ad25Entrance {
          from { transform: translateY(20px); opacity: 0; }
          to { transform: translateY(0); opacity: 1; }
        }
        
        @keyframes ad25SkyTwinkle {
          0%, 100% { opacity: 0.3; }
          50% { opacity: 1; }
        }
        
        @keyframes ad25PopLeft {
          0% { transform: rotate(0deg) translate(0, 0); opacity: 1; }
          70% { opacity: 1; }
          100% { transform: rotate(-28deg) translate(-35px, -12px); opacity: 0; }
        }
        
        @keyframes ad25PopRight {
          0% { transform: rotate(0deg) translate(0, 0); opacity: 1; }
          70% { opacity: 1; }
          100% { transform: rotate(28deg) translate(35px, -12px); opacity: 0; }
        }
        
        @keyframes ad25CenterFade {
          0% { opacity: 1; }
          70% { opacity: 1; }
          100% { opacity: 0; }
        }
        
        @keyframes ad25ConfettiFall {
          0% { opacity: 0; transform: translate(0, 0) rotate(0deg) scale(1); }
          15% { opacity: 1; }
          100% { opacity: 0.3; transform: translate(var(--dx), var(--dy)) rotate(var(--rot, 180deg)) scale(0.8); }
        }
        
        @keyframes ad25Sparkle {
          0% { opacity: 0; transform: scale(0.5); }
          30% { opacity: 1; transform: scale(1.5); }
          100% { opacity: 0; transform: scale(2); }
        }
        
        @keyframes ad25Reveal {
          from { opacity: 0; transform: translateY(10px); }
          to { opacity: 1; transform: translateY(0); }
        }

        @media (prefers-reduced-motion: reduce) {
          .ad25-tree, .ad25-star, .ad25-light, .ad25-ornament, .ad25-tinsel, 
          .ad25-snow, .ad25-presents, .ad25-sky-star, .ad25-sparkle,
          .ad25-left, .ad25-right, .ad25-center, .ad25-confetti &gt; *, .ad25-msg { 
            animation: none !important; 
          }
          .ad25-left { transform: rotate(-28deg) translate(-35px, -12px); opacity: 0; }
          .ad25-right { transform: rotate(28deg) translate(35px, -12px); opacity: 0; }
          .ad25-center { opacity: 0; }
          .ad25-msg, .ad25-confetti &gt; * { opacity: 1; }
          .ad25-light, .ad25-ornament { opacity: 1; }
        }
      &lt;/style&gt;

      
      &lt;rect class=&#34;ad25-sky&#34; width=&#34;640&#34; height=&#34;420&#34; /&gt;
      
      
      &lt;circle cx=&#34;550&#34; cy=&#34;60&#34; r=&#34;30&#34; fill=&#34;#f0e68c&#34; opacity=&#34;0.6&#34; /&gt;
      &lt;circle cx=&#34;545&#34; cy=&#34;55&#34; r=&#34;28&#34; fill=&#34;#fafad2&#34; opacity=&#34;0.4&#34; /&gt;
      
      
      &lt;g class=&#34;ad25-sky-star&#34;&gt;
        &lt;circle cx=&#34;80&#34; cy=&#34;50&#34; r=&#34;2&#34; fill=&#34;white&#34; /&gt;
        &lt;circle cx=&#34;150&#34; cy=&#34;30&#34; r=&#34;1.5&#34; fill=&#34;white&#34; style=&#34;animation-delay: 0.5s;&#34; /&gt;
        &lt;circle cx=&#34;220&#34; cy=&#34;45&#34; r=&#34;2&#34; fill=&#34;white&#34; style=&#34;animation-delay: 1s;&#34; /&gt;
        &lt;circle cx=&#34;350&#34; cy=&#34;70&#34; r=&#34;1.5&#34; fill=&#34;white&#34; style=&#34;animation-delay: 1.5s;&#34; /&gt;
        &lt;circle cx=&#34;480&#34; cy=&#34;40&#34; r=&#34;2&#34; fill=&#34;white&#34; style=&#34;animation-delay: 0.8s;&#34; /&gt;
        &lt;circle cx=&#34;590&#34; cy=&#34;80&#34; r=&#34;1.5&#34; fill=&#34;white&#34; style=&#34;animation-delay: 1.2s;&#34; /&gt;
      &lt;/g&gt;
      
      
      &lt;ellipse class=&#34;ad25-snow-ground&#34; cx=&#34;320&#34; cy=&#34;380&#34; rx=&#34;320&#34; ry=&#34;40&#34; /&gt;

      
      &lt;g class=&#34;ad25-tree&#34;&gt;
        
        &lt;path class=&#34;ad25-line ad25-brown&#34; d=&#34;M200 312 L220 312 L220 352 L200 352 Z&#34; /&gt;
        
        
        &lt;path class=&#34;ad25-line ad25-dark-green&#34; d=&#34;M210 82 L152 152 L177 152 L137 212 L167 212 L122 277 L302 277 L257 212 L287 212 L247 152 L272 152 Z&#34; opacity=&#34;0.3&#34; /&gt;
        &lt;path class=&#34;ad25-line ad25-green&#34; d=&#34;M210 80 L150 150 L175 150 L135 210 L165 210 L120 275 L300 275 L255 210 L285 210 L245 150 L270 150 Z&#34; /&gt;
        
        
        &lt;g class=&#34;ad25-lights&#34;&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;210&#34; cy=&#34;100&#34; r=&#34;4&#34; fill=&#34;#ffeb3b&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;180&#34; cy=&#34;140&#34; r=&#34;4&#34; fill=&#34;#ff4444&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;240&#34; cy=&#34;135&#34; r=&#34;4&#34; fill=&#34;#44ff44&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;165&#34; cy=&#34;175&#34; r=&#34;4&#34; fill=&#34;#4444ff&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;255&#34; cy=&#34;170&#34; r=&#34;4&#34; fill=&#34;#ffeb3b&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;145&#34; cy=&#34;220&#34; r=&#34;4&#34; fill=&#34;#ff44ff&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;275&#34; cy=&#34;215&#34; r=&#34;4&#34; fill=&#34;#ff4444&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;210&#34; cy=&#34;200&#34; r=&#34;4&#34; fill=&#34;#44ffff&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;135&#34; cy=&#34;250&#34; r=&#34;4&#34; fill=&#34;#44ff44&#34; /&gt;
          &lt;circle class=&#34;ad25-light&#34; cx=&#34;285&#34; cy=&#34;245&#34; r=&#34;4&#34; fill=&#34;#4444ff&#34; /&gt;
        &lt;/g&gt;
        
        
        &lt;path class=&#34;ad25-tinsel&#34; d=&#34;M150 150 Q 165 165, 180 160 T 210 165 T 240 160 T 270 150&#34; /&gt;
        &lt;path class=&#34;ad25-tinsel&#34; d=&#34;M135 210 Q 155 225, 175 220 T 210 225 T 245 220 T 285 210&#34; /&gt;
        &lt;path class=&#34;ad25-tinsel&#34; d=&#34;M120 270 Q 150 285, 180 280 T 240 280 T 300 270&#34; /&gt;
        
        
        &lt;g class=&#34;ad25-star&#34;&gt;
          &lt;path class=&#34;ad25-line ad25-gold&#34; d=&#34;M210 54 L222 74 L246 78 L229 94 L233 118 L210 108 L187 118 L191 94 L174 78 L198 74 Z&#34; /&gt;
        &lt;/g&gt;
        
        
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;180&#34; cy=&#34;120&#34; r=&#34;6&#34; fill=&#34;#c41e3a&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;240&#34; cy=&#34;125&#34; r=&#34;5&#34; fill=&#34;#ffd700&#34; style=&#34;animation-delay: 0.3s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;195&#34; cy=&#34;155&#34; r=&#34;7&#34; fill=&#34;#1e90ff&#34; style=&#34;animation-delay: 0.6s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;225&#34; cy=&#34;160&#34; r=&#34;5&#34; fill=&#34;#c0c0c0&#34; style=&#34;animation-delay: 0.9s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;160&#34; cy=&#34;185&#34; r=&#34;6&#34; fill=&#34;#9b59b6&#34; style=&#34;animation-delay: 1.2s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;260&#34; cy=&#34;190&#34; r=&#34;7&#34; fill=&#34;#c41e3a&#34; style=&#34;animation-delay: 0.4s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;210&#34; cy=&#34;195&#34; r=&#34;6&#34; fill=&#34;#ffd700&#34; style=&#34;animation-delay: 0.7s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;175&#34; cy=&#34;220&#34; r=&#34;5&#34; fill=&#34;#1e90ff&#34; style=&#34;animation-delay: 1s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;245&#34; cy=&#34;225&#34; r=&#34;6&#34; fill=&#34;#c0c0c0&#34; style=&#34;animation-delay: 0.5s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;150&#34; cy=&#34;245&#34; r=&#34;7&#34; fill=&#34;#9b59b6&#34; style=&#34;animation-delay: 0.8s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;270&#34; cy=&#34;250&#34; r=&#34;6&#34; fill=&#34;#c41e3a&#34; style=&#34;animation-delay: 1.1s;&#34; /&gt;
        &lt;circle class=&#34;ad25-ornament&#34; cx=&#34;210&#34; cy=&#34;240&#34; r=&#34;5&#34; fill=&#34;#ffd700&#34; style=&#34;animation-delay: 0.2s;&#34; /&gt;
      &lt;/g&gt;
      
      
      &lt;g class=&#34;ad25-presents&#34;&gt;
        
        &lt;rect class=&#34;ad25-line ad25-red&#34; x=&#34;150&#34; y=&#34;330&#34; width=&#34;35&#34; height=&#34;30&#34; /&gt;
        &lt;rect class=&#34;ad25-line ad25-gold&#34; x=&#34;165&#34; y=&#34;330&#34; width=&#34;5&#34; height=&#34;30&#34; /&gt;
        &lt;path class=&#34;ad25-line ad25-gold&#34; d=&#34;M150 345 L185 345&#34; /&gt;
        
        
        &lt;rect class=&#34;ad25-line ad25-green&#34; x=&#34;190&#34; y=&#34;335&#34; width=&#34;30&#34; height=&#34;25&#34; /&gt;
        &lt;rect class=&#34;ad25-line ad25-red&#34; x=&#34;203&#34; y=&#34;335&#34; width=&#34;4&#34; height=&#34;25&#34; /&gt;
        &lt;path class=&#34;ad25-line ad25-red&#34; d=&#34;M190 347 L220 347&#34; /&gt;
        
        
        &lt;rect class=&#34;ad25-line ad25-blue&#34; x=&#34;155&#34; y=&#34;305&#34; width=&#34;25&#34; height=&#34;20&#34; /&gt;
        &lt;circle cx=&#34;167.5&#34; cy=&#34;305&#34; r=&#34;5&#34; fill=&#34;#ffd700&#34; opacity=&#34;0.8&#34; /&gt;
      &lt;/g&gt;

      
      &lt;g class=&#34;ad25-falling-snow&#34;&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;100&#34; cy=&#34;0&#34; r=&#34;2&#34; fill=&#34;white&#34; /&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;200&#34; cy=&#34;0&#34; r=&#34;1.5&#34; fill=&#34;white&#34; style=&#34;animation-delay: 1s; animation-duration: 9s;&#34; /&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;300&#34; cy=&#34;0&#34; r=&#34;2&#34; fill=&#34;white&#34; style=&#34;animation-delay: 2s; animation-duration: 7s;&#34; /&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;400&#34; cy=&#34;0&#34; r=&#34;1.5&#34; fill=&#34;white&#34; style=&#34;animation-delay: 0.5s; animation-duration: 8.5s;&#34; /&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;500&#34; cy=&#34;0&#34; r=&#34;2&#34; fill=&#34;white&#34; style=&#34;animation-delay: 1.5s; animation-duration: 7.5s;&#34; /&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;150&#34; cy=&#34;0&#34; r=&#34;1.5&#34; fill=&#34;white&#34; style=&#34;animation-delay: 3s; animation-duration: 8s;&#34; /&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;350&#34; cy=&#34;0&#34; r=&#34;2&#34; fill=&#34;white&#34; style=&#34;animation-delay: 2.5s; animation-duration: 9s;&#34; /&gt;
        &lt;circle class=&#34;ad25-snow&#34; cx=&#34;450&#34; cy=&#34;0&#34; r=&#34;1.5&#34; fill=&#34;white&#34; style=&#34;animation-delay: 4s; animation-duration: 7s;&#34; /&gt;
      &lt;/g&gt;

      
      &lt;g class=&#34;ad25-cracker&#34;&gt;
        
        &lt;circle class=&#34;ad25-sparkle&#34; cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;40&#34; fill=&#34;#ffd700&#34; opacity=&#34;0.6&#34; /&gt;
        
        
        &lt;g class=&#34;ad25-center&#34;&gt;
          &lt;rect class=&#34;ad25-line ad25-gold&#34; x=&#34;400&#34; y=&#34;236&#34; width=&#34;60&#34; height=&#34;38&#34; rx=&#34;10&#34; /&gt;
          &lt;path class=&#34;ad25-line ad25-red&#34; d=&#34;M405 245 L455 245 M405 255 L455 255 M405 265 L455 265&#34; stroke-width=&#34;2&#34; /&gt;
        &lt;/g&gt;
        
        
        &lt;g class=&#34;ad25-left&#34;&gt;
          &lt;path class=&#34;ad25-line ad25-red&#34; d=&#34;M400 236 L360 220 L340 255 L360 290 L400 274 Z&#34; /&gt;
          &lt;path class=&#34;ad25-line ad25-gold&#34; d=&#34;M365 234 L345 255 L365 276&#34; /&gt;
          &lt;path class=&#34;ad25-line ad25-green&#34; d=&#34;M375 238 L360 255 L375 272&#34; stroke-width=&#34;3&#34; /&gt;
        &lt;/g&gt;
        
        
        &lt;g class=&#34;ad25-right&#34;&gt;
          &lt;path class=&#34;ad25-line ad25-green&#34; d=&#34;M460 236 L500 220 L520 255 L500 290 L460 274 Z&#34; /&gt;
          &lt;path class=&#34;ad25-line ad25-gold&#34; d=&#34;M495 234 L515 255 L495 276&#34; /&gt;
          &lt;path class=&#34;ad25-line ad25-red&#34; d=&#34;M485 238 L500 255 L485 272&#34; stroke-width=&#34;3&#34; /&gt;
        &lt;/g&gt;
        
        
        &lt;g class=&#34;ad25-confetti&#34;&gt;
          
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;5&#34; fill=&#34;#ff4444&#34; style=&#34;--dx: -85px; --dy: -70px; --rot: 240deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;4&#34; fill=&#34;#44ff44&#34; style=&#34;--dx: 80px; --dy: -65px; --rot: 180deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;5&#34; fill=&#34;#ffd700&#34; style=&#34;--dx: -50px; --dy: -100px; --rot: 360deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;4&#34; fill=&#34;#4444ff&#34; style=&#34;--dx: 55px; --dy: -95px; --rot: 270deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;5&#34; fill=&#34;#ff44ff&#34; style=&#34;--dx: 0px; --dy: -110px; --rot: 180deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;4&#34; fill=&#34;#ff4444&#34; style=&#34;--dx: -95px; --dy: -50px; --rot: 90deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;5&#34; fill=&#34;#44ffff&#34; style=&#34;--dx: 90px; --dy: -45px; --rot: 45deg;&#34; /&gt;
          
          
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;3&#34; fill=&#34;#ffd700&#34; style=&#34;--dx: -65px; --dy: -85px; --rot: 120deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;3&#34; fill=&#34;#44ff44&#34; style=&#34;--dx: 70px; --dy: -80px; --rot: 200deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;3&#34; fill=&#34;#ff44ff&#34; style=&#34;--dx: -40px; --dy: -105px; --rot: 300deg;&#34; /&gt;
          &lt;circle cx=&#34;430&#34; cy=&#34;255&#34; r=&#34;3&#34; fill=&#34;#4444ff&#34; style=&#34;--dx: 45px; --dy: -108px; --rot: 150deg;&#34; /&gt;
          
          
          &lt;path class=&#34;ad25-line&#34; d=&#34;M430 255 L430 225 Q428 210, 425 195&#34; stroke=&#34;#ff4444&#34; stroke-width=&#34;4&#34; 
                style=&#34;--dx: -15px; --dy: -120px; --rot: 45deg;&#34; /&gt;
          &lt;path class=&#34;ad25-line&#34; d=&#34;M430 255 L450 235 Q460 220, 470 205&#34; stroke=&#34;#44ff44&#34; stroke-width=&#34;4&#34; 
                style=&#34;--dx: 95px; --dy: -80px; --rot: -30deg;&#34; /&gt;
          &lt;path class=&#34;ad25-line&#34; d=&#34;M430 255 L410 235 Q400 220, 390 205&#34; stroke=&#34;#ffd700&#34; stroke-width=&#34;4&#34; 
                style=&#34;--dx: -95px; --dy: -85px; --rot: 30deg;&#34; /&gt;
          
          
          &lt;path d=&#34;M430 255 L432 250 L437 249 L433 245 L434 240 L430 243 L426 240 L427 245 L423 249 L428 250 Z&#34; 
                fill=&#34;#ffd700&#34; style=&#34;--dx: -75px; --dy: -60px; --rot: 180deg;&#34; /&gt;
          &lt;path d=&#34;M430 255 L432 250 L437 249 L433 245 L434 240 L430 243 L426 240 L427 245 L423 249 L428 250 Z&#34; 
                fill=&#34;#ff44ff&#34; style=&#34;--dx: 75px; --dy: -55px; --rot: 90deg;&#34; /&gt;
        &lt;/g&gt;
      &lt;/g&gt;

      
      &lt;g class=&#34;ad25-msg&#34;&gt;
        &lt;text x=&#34;320&#34; y=&#34;395&#34; text-anchor=&#34;middle&#34; 
              style=&#34;font: 700 36px/1.1 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; 
                     fill: #c41e3a; stroke: #ffd700; stroke-width: 1; paint-order: stroke;&#34;&gt;
          Merry Christmas!
        &lt;/text&gt;
      &lt;/g&gt;
    &lt;/svg&gt;
  &lt;/figure&gt;
&lt;/div&gt;

&lt;p&gt;From my HomeLab to yours, I’m wishing you and your family a very Merry Christmas and a Happy New Year.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 24: Thank You and Looking Ahead</title>
      <link>/posts/2025-12-24-advent-day24/</link>
      <pubDate>Wed, 24 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-24-advent-day24/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-24-we-made-it-&#34;&gt;
  Advent Calendar Day 24: We Made It! 🎄
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-24-we-made-it-&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 24, the final day of our Veeam Blog Advent Calendar! We made it!&lt;/p&gt;
&lt;p&gt;I can&amp;rsquo;t believe we&amp;rsquo;re already here. Twenty-four days of features, tips, technical deep dives, and hopefully a few &amp;ldquo;aha!&amp;rdquo; moments along the way. Whether you&amp;rsquo;ve been following along daily or binge-reading this all in one sitting (no judgment here!), thank you for being on this journey with me.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 23: Role-Based Access Control (RBAC) in V13</title>
      <link>/posts/2025-12-23-advent-day23/</link>
      <pubDate>Tue, 23 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-23-advent-day23/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-23-enhanced-rbac-in-veeam-v13&#34;&gt;
  Advent Calendar Day 23: Enhanced RBAC in Veeam v13
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-23-enhanced-rbac-in-veeam-v13&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 23 of our Veeam Blog Advent Calendar! We&amp;rsquo;re almost at the finish line. Today we&amp;rsquo;re exploring &lt;strong&gt;enhanced Role-Based Access Control (RBAC) in Veeam Backup &amp;amp; Replication v13&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;V13 released a massive overhaul to how RBAC works, and honestly the team went pretty hard here and got really granular. If you&amp;rsquo;ve been using Veeam for a long time, you&amp;rsquo;ll know RBAC needed a bit of work, and boy did they deliver in V13! That&amp;rsquo;s why I&amp;rsquo;m highlighting this now because it could be so easily missed if you don&amp;rsquo;t go back and check the roles.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 22: SureBackup Part 2 - Advanced Configuration</title>
      <link>/posts/2025-12-22-advent-day22/</link>
      <pubDate>Mon, 22 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-22-advent-day22/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-22-surebackup-part-2---deep-dive-configuration&#34;&gt;
  Advent Calendar Day 22: SureBackup Part 2 - Deep Dive Configuration
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-22-surebackup-part-2---deep-dive-configuration&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 22 of our Veeam Blog Advent Calendar!&lt;/p&gt;
&lt;p&gt;Yesterday we introduced SureBackup with the creation of our virtual labs and application groups. Today we&amp;rsquo;re going to walk through creating the SureBackup job and understanding what can be done once we have this all setup, how to use it for testing, validation, and even forensic analysis.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 21: SureBackup Part 1 - Introduction</title>
      <link>/posts/2025-12-21-advent-day21/</link>
      <pubDate>Sun, 21 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-21-advent-day21/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-21-surebackup-part-1---automated-backup-verification&#34;&gt;
  Advent Calendar Day 21: SureBackup Part 1 - Automated Backup Verification
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-21-surebackup-part-1---automated-backup-verification&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 21 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re starting a two-part series on one of Veeam&amp;rsquo;s most impressive features: &lt;strong&gt;SureBackup&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;We have mentioned a few times already about features that fly under the radar but this is genuinely the biggest one that goes unnoticed, every time this gets brought up in conversation it&amp;rsquo;s like really? Veeam can do that? and the answer is YES it&amp;rsquo;s been in the product for many versions already!&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 20: Backup Job Pre and Post Scripts</title>
      <link>/posts/2025-12-20-advent-day20/</link>
      <pubDate>Sat, 20 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-20-advent-day20/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-20-automating-with-pre-and-post-job-scripts&#34;&gt;
  Advent Calendar Day 20: Automating with Pre and Post Job Scripts
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-20-automating-with-pre-and-post-job-scripts&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 20 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re exploring a powerful automation feature: &lt;strong&gt;pre and post job scripts&lt;/strong&gt; for backup jobs.&lt;/p&gt;
&lt;p&gt;This is really a nifty little feature that genuiely gets overlooked to often and when I talk to customer who have pretty custom environment I look to this feature to help me out as it allows us to play outside the box a little bit by creating custom workflows for otherwise tricky applications.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 19: Publishing VM Disks to Another Server</title>
      <link>/posts/2025-12-19-advent-day19/</link>
      <pubDate>Fri, 19 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-19-advent-day19/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-19-publishing-vm-disks-to-another-server&#34;&gt;
  Advent Calendar Day 19: Publishing VM Disks to Another Server
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-19-publishing-vm-disks-to-another-server&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 19 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re diving into a powerful but often overlooked feature: &lt;strong&gt;publishing virtual machine disks to another server&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;This is one of those features that doesn&amp;rsquo;t get the spotlight it deserves, but when you need it, it&amp;rsquo;s absolutely invaluable. Whether you&amp;rsquo;re troubleshooting, migrating data, or performing forensic analysis, the ability to attach VM disks from your backups to a different server opens up some really interesting possibilities.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 18: Compare with Production for Active Directory</title>
      <link>/posts/2025-12-18-advent-day18/</link>
      <pubDate>Thu, 18 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-18-advent-day18/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-18-finding-what-changed-in-active-directory&#34;&gt;
  Advent Calendar Day 18: Finding What Changed in Active Directory
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-18-finding-what-changed-in-active-directory&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 18 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re exploring a powerful feature for Active Directory recovery: &lt;strong&gt;Compare with Production&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;When something goes wrong in AD, you often need to know what changed. Was a user account modified? Did group membership change? Veeam&amp;rsquo;s Compare with Production makes finding these changes simple.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 17: Protecting Intune Policies with Veeam</title>
      <link>/posts/2025-12-17-advent-day17/</link>
      <pubDate>Wed, 17 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-17-advent-day17/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-17-backing-up-your-intune-configuration&#34;&gt;
  Advent Calendar Day 17: Backing Up Your Intune Configuration
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-17-backing-up-your-intune-configuration&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 17 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;ll be talking about Intune Policies, something that was recently added to Veeam&amp;rsquo;s toolkit and worth exploring.&lt;/p&gt;
&lt;p&gt;Your Intune environment contains critical device management policies, compliance settings, and app configurations. Losing these means hours of manual reconfiguration. Let&amp;rsquo;s look at how Veeam protects this essential infrastructure.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 16: VMware Tags - Dynamic Backup Automation</title>
      <link>/posts/2025-12-16-advent-day16/</link>
      <pubDate>Tue, 16 Dec 2025 06:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-16-advent-day16/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-16-let-tags-do-the-work&#34;&gt;
  Advent Calendar Day 16: Let Tags Do the Work
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-16-let-tags-do-the-work&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 16 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re going to take a look at how we can automate backups and create a more dynamic policy-based approach to our backups.&lt;/p&gt;
&lt;p&gt;In most cases, the infrastructure admins and the backup admins are two different teams, and sometimes a new workload gets created and the message never reaches the backup team to add the workload to the required backups. This could mean a Tier 1 workload gets missed from regular backups or gets added to the incorrect policy and doesn&amp;rsquo;t meet your compliance needs.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 15: Backup Move - Seamless Backup Migration</title>
      <link>/posts/2025-12-15-advent-day15/</link>
      <pubDate>Mon, 15 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-15-advent-day15/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-15-moving-backups-without-breaking-a-sweat&#34;&gt;
  Advent Calendar Day 15: Moving Backups Without Breaking a Sweat
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-15-moving-backups-without-breaking-a-sweat&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 15 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re talking about a feature that might seem simple on the surface but is absolutely brilliant when you need it: &lt;strong&gt;Backup Move&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Need to migrate backups between repositories? Want to move them to faster storage, or maybe to the cloud? Backup Move does this while preserving all your deduplication and compression savings. This feature has been out for some time now but man when it came out this blew my mind and made life so much easier for hardware refreshes or customer migrations, it was definitely a quality of life upgrade we needed.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 14: SAML Authentication - Modern Identity for VBR</title>
      <link>/posts/2025-12-14-advent-day14/</link>
      <pubDate>Sun, 14 Dec 2025 06:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-14-advent-day14/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-14-saml-authentication-arrives-in-v13&#34;&gt;
  Advent Calendar Day 14: SAML Authentication Arrives in V13
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-14-saml-authentication-arrives-in-v13&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 14 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re talking about a feature that&amp;rsquo;s been on many wish lists for years and finally arrived in Veeam Backup &amp;amp; Replication V13: &lt;strong&gt;SAML authentication&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;For those of us managing enterprise environments with modern identity providers, this is a game-changer. Let&amp;rsquo;s dive into why this matters and how to set it up.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 13: Distributed Metadata - Your Ultimate Insurance Policy</title>
      <link>/posts/2025-12-13-advent-day13/</link>
      <pubDate>Sat, 13 Dec 2025 06:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-13-advent-day13/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-13-when-everything-goes-wrong-metadata-saves-the-day&#34;&gt;
  Advent Calendar Day 13: When Everything Goes Wrong, Metadata Saves the Day
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-13-when-everything-goes-wrong-metadata-saves-the-day&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 13 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re diving into one of those features that really sets Veeam apart in my opinion and it&amp;rsquo;s how it handles its backup files: Distributed Metadata.&lt;/p&gt;
&lt;p&gt;If we have ever had to rebuild a global dedupe catalog you&amp;rsquo;ll immediately know why this is insanely powerful, with Veeam we could literally lose the entire infrastructure, VBR server and all and still be able to recover as long as we have access to the repo and the encryption key, that&amp;rsquo;s the power of the distributed metadata and something that in my opinion is a great strength that is sometimes seen as a weakness and today I&amp;rsquo;ll prove why it&amp;rsquo;s such a strength.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 12: VeeamZIP - The Unsung Hero of Quick Backups</title>
      <link>/posts/2025-12-12-advent-day12/</link>
      <pubDate>Fri, 12 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-12-advent-day12/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-12-veeamzip---small-feature-big-impact&#34;&gt;
  Advent Calendar Day 12: VeeamZIP - Small Feature, Big Impact
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-12-veeamzip---small-feature-big-impact&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 12 of our Veeam Blog Advent Calendar! Today we&amp;rsquo;re kicking off the &amp;ldquo;fun stuff&amp;rdquo; portion of our advent journey, and I can&amp;rsquo;t think of a better feature to start with than VeeamZIP.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;ve never heard of VeeamZIP, you&amp;rsquo;re not alone. It&amp;rsquo;s one of those features that quietly sits in the Veeam Backup &amp;amp; Replication interface, not making a fuss, but absolutely saving the day when you need it. Let me tell you why this little feature deserves way more love than it gets.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 11: Taking Stock and Looking Ahead</title>
      <link>/posts/2025-12-11-advent-day11/</link>
      <pubDate>Thu, 11 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-11-advent-day11/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-11-a-quick-recap-and-whats-coming-next&#34;&gt;
  Advent Calendar Day 11: A Quick Recap and What&amp;rsquo;s Coming Next
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-11-a-quick-recap-and-whats-coming-next&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 11 of our Veeam Blog Advent Calendar! We&amp;rsquo;re nearly halfway through our festive countdown to Christmas, and honestly, what a journey it&amp;rsquo;s been so far! I figured today would be a perfect opportunity to take a breath, look back at what we&amp;rsquo;ve covered over the past ten days, and chat about where we&amp;rsquo;re heading for the rest of the month.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 10: Veeam Security - After a Backup</title>
      <link>/posts/2025-12-10-advent-day10/</link>
      <pubDate>Wed, 10 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-10-advent-day10/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-10-yara-scanning--veeam-threat-hunter---recovery-security&#34;&gt;
  Advent Calendar Day 10: YARA Scanning &amp;amp; Veeam Threat Hunter - Recovery Security
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-10-yara-scanning--veeam-threat-hunter---recovery-security&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 10 of our Veeam Blog Advent Calendar! Over the past two days, we&amp;rsquo;ve covered security &lt;strong&gt;before&lt;/strong&gt; backup and &lt;strong&gt;during&lt;/strong&gt; backup. Today, we&amp;rsquo;re tackling the &amp;ldquo;&lt;strong&gt;After&lt;/strong&gt;&amp;rdquo; phase: ensuring your backups are clean and secure &lt;strong&gt;before&lt;/strong&gt; you restore them back to production.&lt;/p&gt;
&lt;p&gt;This is the final safety check. You&amp;rsquo;ve detected threats during backup, you&amp;rsquo;ve isolated infected systems, and now you need to restore operations. But how do you know the backup you&amp;rsquo;re about to restore is actually clean? What if malware slipped through? What if it&amp;rsquo;s been hiding in your backups for weeks?&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 9: Veeam Security - During a backup</title>
      <link>/posts/2025-12-09-advent-day09/</link>
      <pubDate>Tue, 09 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-09-advent-day09/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-9-inline-malware-detection--file-system-activity-analysis---during-backup-security&#34;&gt;
  Advent Calendar Day 9: Inline Malware Detection &amp;amp; File System Activity Analysis - During Backup Security
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-9-inline-malware-detection--file-system-activity-analysis---during-backup-security&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Welcome to Day 9 of our Veeam Blog Advent Calendar! Yesterday we explored Data Observability &amp;amp; Analytics, the Incident API, and the Security &amp;amp; Compliance Analyzer—understanding your data landscape and identifying risks &lt;strong&gt;before&lt;/strong&gt; backup. Today, we&amp;rsquo;re moving to the &amp;ldquo;&lt;strong&gt;During&lt;/strong&gt;&amp;rdquo; phase: protecting your data inline whilst we actually perform the backup.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 8: Veeam Security - Before a backup</title>
      <link>/posts/2025-12-08-advent-day08/</link>
      <pubDate>Mon, 08 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-08-advent-day08/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-8-veeam-data-observability--analytics---before-backup-security&#34;&gt;
  Advent Calendar Day 8: Veeam Data Observability &amp;amp; Analytics - Before Backup Security
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-8-veeam-data-observability--analytics---before-backup-security&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt;
I&amp;rsquo;m not a professional developer, and this content is intended to demonstrate the &amp;ldquo;art of the possible&amp;rdquo; rather than serve as production-ready guidance. Use these features with caution, and test thoroughly in your environment before relying on them for critical tasks.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Welcome to Day 8 of our Veeam Blog Advent Calendar! Over the past week, we&amp;rsquo;ve been deep in the automation trenches exploring APIs, building workflows, and adding AI intelligence. Today, we&amp;rsquo;re shifting gears to focus on something equally critical: &lt;strong&gt;security&lt;/strong&gt;.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 7: Utilizing Veeam Intelligence with VeeamONE</title>
      <link>/posts/2025-12-07-advent-day07/</link>
      <pubDate>Sun, 07 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-07-advent-day07/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-7-integrating-ai-intelligence-with-veeamone&#34;&gt;
  Advent Calendar Day 7: Integrating AI Intelligence with VeeamONE
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-7-integrating-ai-intelligence-with-veeamone&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt;
I&amp;rsquo;m not a professional developer, and this content is intended to demonstrate the &amp;ldquo;art of the possible&amp;rdquo; rather than serve as production-ready guidance. Use these features with caution, and test thoroughly in your environment before relying on them for critical tasks.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Welcome to Day 7 of our Veeam Blog Advent Calendar! Over the last few days, we have spent a lot of time in automation, creating PowerShell scripts and N8N workflows and really seeing the power of automation. Today, I&amp;rsquo;d like to switch gears a little bit—still on the automation front—but rather than us writing our own code, let&amp;rsquo;s take a look at Veeam Intelligence.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 6: Building Veeam Workflows with N8N (Part 2)</title>
      <link>/posts/2025-12-06-advent-day06/</link>
      <pubDate>Sat, 06 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-06-advent-day06/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-6-building-veeam-workflows-with-n8n-part-2&#34;&gt;
  Advent Calendar Day 6: Building Veeam Workflows with N8N (Part 2)
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-6-building-veeam-workflows-with-n8n-part-2&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt;
I&amp;rsquo;m not a professional developer, and this content is intended to demonstrate the &amp;ldquo;art of the possible&amp;rdquo; rather than serve as production-ready guidance. Use these features with caution, and test thoroughly in your environment before relying on them for critical tasks.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Welcome to Day 6 of our Veeam Blog Advent Calendar! Over the past few days, we&amp;rsquo;ve been on quite a journey. We explored the Veeam REST API, learned to use it with PowerShell, and yesterday we set up N8N. Today, we&amp;rsquo;re bringing it all together to create a powerful security automation workflow that could be a game-changer for your environment.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 5: Setting Up N8N for Workflow Automation (Part 1)</title>
      <link>/posts/2025-12-05-advent-day05/</link>
      <pubDate>Fri, 05 Dec 2025 06:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-05-advent-day05/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-5-setting-up-n8n-for-workflow-automation-part-1&#34;&gt;
  Advent Calendar Day 5: Setting Up N8N for Workflow Automation (Part 1)
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-5-setting-up-n8n-for-workflow-automation-part-1&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt;
I&amp;rsquo;m not a professional developer, and this content is intended to demonstrate the &amp;ldquo;art of the possible&amp;rdquo; rather than serve as production-ready guidance. Use these features with caution, and test thoroughly in your environment before relying on them for critical tasks.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Welcome to Day 5 of our Veeam Blog Advent Calendar! Over the past few days, we&amp;rsquo;ve been exploring the Veeam REST API through Swagger and PowerShell scripts. Today, we&amp;rsquo;re taking automation to the next level by introducing &lt;strong&gt;N8N&lt;/strong&gt; (pronounced &amp;ldquo;n-eight-n&amp;rdquo;), a powerful workflow automation tool that&amp;rsquo;s about to change how you think about integrations.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 4: Getting Hands-On with the Veeam REST API</title>
      <link>/posts/2025-12-04-advent-day04/</link>
      <pubDate>Thu, 04 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-04-advent-day04/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-4-getting-hands-on-with-the-veeam-rest-api&#34;&gt;
  Advent Calendar Day 4: Getting Hands-On with the Veeam REST API
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-4-getting-hands-on-with-the-veeam-rest-api&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt;
I&amp;rsquo;m not a professional developer, and this content is intended to demonstrate the &amp;ldquo;art of the possible&amp;rdquo; rather than serve as production-ready guidance. Use these features with caution, and test thoroughly in your environment before relying on them for critical tasks.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Welcome back to Day 4 of our Veeam Blog Advent Calendar! Yesterday we explored the Veeam REST API through Swagger and learned about what&amp;rsquo;s new in V13.0.1. Today, we&amp;rsquo;re rolling up our sleeves and getting practical, I&amp;rsquo;m going to show you how to actually use the API with PowerShell and CLI tools to accomplish real-world tasks.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 3: Exploring the Veeam Backup &amp; Replication REST API</title>
      <link>/posts/2025-12-03-advent-day03/</link>
      <pubDate>Wed, 03 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-03-advent-day03/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-3-exploring-the-veeam-backup--replication-rest-api&#34;&gt;
  Advent Calendar Day 3: Exploring the Veeam Backup &amp;amp; Replication REST API
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-3-exploring-the-veeam-backup--replication-rest-api&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt;
I&amp;rsquo;m not a professional developer, and this content is intended to demonstrate the &amp;ldquo;art of the possible&amp;rdquo; rather than serve as production-ready guidance. Use these features with caution, and test thoroughly in your environment before relying on them for critical tasks.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Welcome to Day 3 of our Veeam Blog Advent Calendar! We&amp;rsquo;re continuing our automation theme today, and I couldn&amp;rsquo;t be more excited to dive into one of my favorite topics: the &lt;strong&gt;Veeam Backup &amp;amp; Replication REST API&lt;/strong&gt;.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Advent Calendar Day 2: Converting Kasten Helm Commands</title>
      <link>/posts/2025-12-02-advent-day02/</link>
      <pubDate>Tue, 02 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-02-advent-day02/</guid>
      
      <description>&lt;h2 id=&#34;advent-calendar-day-2-converting-kasten-helm-commands-to-repeatable-yaml&#34;&gt;
  Advent Calendar Day 2: Converting Kasten Helm Commands to Repeatable YAML
  &lt;a class=&#34;anchor-head&#34; href=&#34;#advent-calendar-day-2-converting-kasten-helm-commands-to-repeatable-yaml&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt;
I&amp;rsquo;m not a professional developer, and this content is intended to demonstrate the &amp;ldquo;art of the possible&amp;rdquo; rather than serve as production-ready guidance. Use these features with caution, and test thoroughly in your environment before relying on them for critical tasks.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Welcome back to Day 2 of our Veeam Blog Advent Calendar! Yesterday we kicked things off with an introduction to the series, and today we&amp;rsquo;re diving straight into our first topic: &lt;strong&gt;Automation&lt;/strong&gt;.&lt;/p&gt;</description>
      
    </item>
    
    <item>
      <title>Veeam Blog Advent Calendar 2025: Unwrapping 24 Days of Backup Magic</title>
      <link>/posts/2025-12-01-advent-day01/</link>
      <pubDate>Mon, 01 Dec 2025 07:00:00 +0800</pubDate>
      
      <guid>/posts/2025-12-01-advent-day01/</guid>
      
      <description>&lt;h2 id=&#34;welcome-to-the-veeam-blog-advent-calendar&#34;&gt;
  Welcome to the Veeam Blog Advent Calendar!
  &lt;a class=&#34;anchor-head&#34; href=&#34;#welcome-to-the-veeam-blog-advent-calendar&#34; aria-label=&#34;Anchor link to this heading&#34;&gt;&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Hello everyone, and welcome to December! As we approach the festive season, I&amp;rsquo;m absolutely thrilled to kick off something special, a &lt;strong&gt;Veeam Blog Advent Calendar&lt;/strong&gt; that will take us right through to Christmas Eve!&lt;/p&gt;
&lt;p&gt;Think of this as your daily dose of Veeam goodness, unwrapping a new topic each day as we count down to the holidays. Whether you&amp;rsquo;re sipping hot cocoa by the fire or catching up during your lunch break, I&amp;rsquo;ll be here sharing insights, tips, and discoveries from the world of Veeam Backup &amp;amp; Replication.&lt;/p&gt;</description>
      
    </item>
    
  </channel>
</rss>