Python Official Blog Relocated: Answers to Your Top Questions

By • min read
<p>The Python Insider Blog has officially relocated to a new home at <a href="https://blog.python.org">blog.python.org</a>, powered by a Git repository. All 307 previous entries from the Blogger era have been successfully migrated, and old URLs automatically redirect to the new location. Your RSS reader should pick up the new <a href="https://blog.python.org/rss.xml">RSS feed</a> without manual updates. This move opens up easier contributions and a modern tech stack. Below, we answer common questions about the transition, how you can get involved, and what technology now runs the blog.</p> <h2 id="why-moved">Why did the Python Insider Blog move away from Blogger?</h2> <p>Blogger served us well for many years, but it had limitations. To contribute, you needed a Google account and had to use Blogger's own editor, which created an unnecessary barrier. The new system is built around plain Markdown files stored in a Git repository. Anyone who knows how to open a pull request can now submit a post. This lowers the entry threshold dramatically, making it easier for the community to contribute release announcements, sprint reports, governance updates, and other official content. The migration also brings better version control and the ability to collaborate more efficiently. All historical posts were preserved and old URLs redirect to the new site, so nothing was lost in the move.</p><figure style="margin:20px 0"><img src="https://picsum.photos/seed/1970176133/800/450" alt="Python Official Blog Relocated: Answers to Your Top Questions" style="width:100%;height:auto;border-radius:8px" loading="lazy"><figcaption style="font-size:12px;color:#666;margin-top:5px"></figcaption></figure> <h2 id="how-contribute">How can I contribute a post to the new Python Insider Blog?</h2> <p>Contributing is straightforward. First, fork the repository at <a href="https://github.com/python/python-insider-blog">https://github.com/python/python-insider-blog</a>. Then create a new directory under <code>content/posts/</code> using your desired post slug. Inside that directory, add an <code>index.md</code> file with your content, including YAML frontmatter for the title, date, authors, and tags. You can also place images in the same directory. Once everything is ready, open a pull request against the main branch. The repository's README includes detailed instructions on frontmatter fields and local development if you want to preview your post before submitting. No special tooling is required—just a basic text editor and a GitHub account.</p> <h2 id="file-structure">What is the file structure and format for blog posts?</h2> <p>Each blog post lives in its own directory under <code>content/posts/{slug}/</code>. The <code>slug</code> is a short URL-friendly identifier. Inside that directory, the main content file is always named <code>index.md</code>. The file contains YAML frontmatter at the top, which includes fields like <code>title</code>, <code>date</code>, <code>authors</code>, and <code>tags</code>. The body of the post is written in standard Markdown. Images and other assets are stored right next to the <code>index.md</code> file in the same directory, making it easy to keep everything together. This structure eliminates the need for proprietary editors or external image hosting. As long as you can write Markdown and organize files, you can create a post.</p> <h2 id="tech-stack">What technology powers the new blog?</h2> <p>The site is built with <strong>Astro</strong>, a modern static site generator, and output as fully static HTML for fast loading. During development, you can optionally use <strong>Keystatic CMS</strong> if you prefer a visual editor instead of raw Markdown, though it is entirely optional. Styling is handled by <strong>Tailwind CSS</strong>. The entire build and deployment process runs via <strong>GitHub Actions</strong> whenever changes are merged into the main branch. This setup keeps the site lightweight, secure, and easy to maintain. The use of a Git repository as the source of truth means every post is version-controlled, and rollbacks are simple if needed.</p> <h2 id="urls-rss">What happens to old blog URLs and the RSS feed?</h2> <p>All 307 posts from the Blogger era have been migrated, and their original URLs automatically redirect to the corresponding new addresses on <a href="https://blog.python.org">blog.python.org</a>. You don't need to update any bookmarks manually. Similarly, the RSS feed has moved to <a href="https://blog.python.org/rss.xml">https://blog.python.org/rss.xml</a>. Most RSS readers should automatically pick up the new feed from the redirect. If you experience any issues, you can manually update your reader to the new feed URL. The old Blogger feed may eventually stop working, so switching to the new address is recommended.</p> <h2 id="report-issues">How can I report issues or help improve the blog?</h2> <p>If you spot broken links, missing images, formatting problems, or any other issues resulting from the migration, the best way to report them is by filing an issue on the <a href="https://github.com/python/python-insider-blog">GitHub repository</a>. The project welcomes contributions in the form of bug reports and feature requests. Pull requests for fixes are also appreciated. For general questions or suggestions about content, you can also open a discussion in the repository. The community-maintained nature of the new setup means everyone can help keep the blog accurate and polished.</p>