Making Content Management A Smooth Experience With A Headless CMS - Episode 295

Summary

Building a web application requires integrating a number of separate concerns into a single experience. One of the common requirements is a content management system to allow product owners and marketers to make the changes needed for them to do their jobs. Rather than spend the time and focus of your developers to build the end to end system a growing trend is to use a headless CMS. In this episode Jake Lumetta shares why he decided to spend his time and energy on building a headless CMS as a service, when and why you might want to use one, and how to integrate it into your applications so that you can focus on the rest of your application.

Did you know Data science is a fast-growing career field, with a 650% growth in jobs since 2012 and a median salary of around $125,000? Springboard has identified that data careers are going to shape the future, and has responded to that need by creating the Springboard School of Data, comprehensive, end-to-end data career programs that encompass data science, data analytics, data engineering, and machine learning.

Each Springboard course is 100% online and remote, and each course curriculum is tailored to fit the schedule of working professionals. This means flexible hours and a project-based methodology designed to get real world experience: every Springboard student graduates with a portfolio of projects to showcase their skills to potential employers. Springboard’s unique approach to learning is centered on the very simple idea that mentorship and one-on-one human support is the fastest and most efficient way to learn new skills. That’s why all of Springboard’s data courses are supported by a vast network of industry expert mentors, who are carefully vetted to ensure the right fit for each program. Mentors provide valuable guidance, coaching, and support to help keep Springboard students motivated through weekly, 1:1 video calls for the duration of the program.

Before graduation, Springboard’s career services team supports students in their job search, helping prepare them for interviews and networking, and facilitates their transition in the tech or data industry. Springboard’s tuition-back guarantee allows students to secure the role of their dreams and invest in themselves without risk. Meaning students are not charged if they don’t get a job offer in the field they study. Springboard’s support does not end when students graduate. All Springboard graduates benefit from an extensive support network encompassing career services, 1:1 career coaching, networking tips, resume assistance, interview prep, and salary negotiation.

Since Springboard was founded in 2013, around 94% of eligible graduates secured a job within one year, earning an average salary increase of $26,000. Want to learn more? Springboard is exclusively offering up to 20 scholarships of $500 to listeners of Podcast.__init__. Simply go to pythonpodcast.com/springboard for more information.


Do you want to try out some of the tools and applications that you heard about on Podcast.__init__? Do you have a side project that you want to share with the world? With Linode’s managed Kubernetes platform it’s now even easier to get started with the latest in cloud technologies. With the combined power of the leading container orchestrator and the speed and reliability of Linode’s object storage, node balancers, block storage, and dedicated CPU or GPU instances, you’ve got everything you need to scale up. Go to pythonpodcast.com/linode today and get a $100 credit to launch a new cluster, run a server, upload some data, or… And don’t forget to thank them for being a long time supporter of Podcast.__init__!


Do you want to get better at Python? Now is an excellent time to take an online course. Whether you’re just learning Python or you need deep dives on topics like APIs, memory mangement, async and await, and more, our friends at Talk Python Training have a top-notch course for you. If you’re just getting started, be sure to check out the Python for Absolute Beginners course. It’s like the first year of computer science that you never took, compressed into 10 fun hours of Python coding and problem solving. Visit pythonpodcast.com/talkpython to find your next level. That’s pythonpodcast.com/talkpython and you’ll save 10% off select courses.



Announcements

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $100 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
  • Python has become the default language for working with data, whether as a data scientist, data engineer, data analyst, or machine learning engineer. Springboard has launched their School of Data to help you get a career in the field through a comprehensive set of programs that are 100% online and tailored to fit your busy schedule. With a network of expert mentors who are available to coach you during weekly 1:1 video calls, a tuition-back guarantee that means you don’t pay until you get a job, resume preparation, and interview assistance there’s no reason to wait. Springboard is offering up to 20 scholarships of $500 towards the tuition cost, exclusively to listeners of this show. Go to pythonpodcast.com/springboard today to learn more and give your career a boost to the next level.
  • Your host as usual is Tobias Macey and today I’m interviewing Jake Lumetta about Butter CMS and the role of a headless CMS in the modern web ecosystem.

Interview

  • Introductions
  • How did you get introduced to Python?
  • Can you start by describing what a headless CMS is?
    • How does the use case and user experience differ from working with a traditional CMS (e.g. WordPress, etc.)?
    • How does a headless CMS compare to using a framework such as Django CMS or Wagtail?
  • Can you describe what you have built at ButterCMS?
    • What was your motivation for starting a business to provide a CMS as a service?
  • How would you characterize the current state of the CMS ecosystem?
    • How does ButterCMS compare to the available open source and commercial options?
  • What are the trends in the web ecosystem that have made a headless CMS necessary or useful?
  • What types of information are people managing in a CMS?
  • How are people integrating headless CMS systems into their Python applications?
  • Can you describe the architecture for Butter?
    • How has the system changed or evolved since you first began working on it?
    • What was your decision process for determining what language(s) and technology stack to use for building the platform?
  • What are the aspects of building and maintaining a CMS that are most complex?
  • What are some of the most interesting, innovative, or unexpected ways that you have seen ButterCMS used?
  • What have you found to be the most interesting, unexpected, or challenging lessons that you have learned while building ButterCMS?
  • When is ButterCMS the wrong choice?
  • What do you have planned for the future of ButterCMS?

Keep In Touch

Picks

Closing Announcements

  • Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management.
  • Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
  • If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
  • To help other people find the show please leave a review on iTunes and tell your friends and co-workers
  • Join the community in the new Zulip chat workspace at pythonpodcast.com/chat

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Liked it? Take a second to support Podcast.__init__ on Patreon!
{"cc_re__cc_re__cc_by_sa_3_0": ["y Network</a></li><li><a href=\"https://aws.amazon.com/cloudfront/\" target=\"_blank\" rel=\"noopener\">AWS Cloudfront</a></li><li><a href=\"https://ionicframework.com/\" target=\"_blank\" rel=\"noopener\">Ionic</a></li><li><a href=\"https://reactnative.dev/\" target=\"_blank\" rel=\"noopener\">React Native</a></li></ul><p>The intro and outro music is from Requiem for a Fish <a href=\"http://freemusicarchive.org/music/The_Freak_Fandango_Orchestra/\" target=\"_blank\" rel=\"noopener\">The Freak Fandango Orchestra</a> / <a href=\"http://creativecommons.org/licenses/by-sa/3.0/\" target=\"_blank\" rel=\"noopener\">CC BY-SA</a></p></div><div class=\"cb_p6_patreon_button\" style=\"text-align:center !important;margin-top:15px;margin-bottom:15px;\"><div class=\"cb_p6_message_over_post_button\" style=\"font-size:24px;margin-top:10px;margin-bottom:10px;\">Liked it? Take a second to support Podcast.__init__ on Patreon!</div><a rel=\"nofollow\" href=\"https://www.patreon.com/podcastinit?utm_content=post_button&amp;utm_medium=patron_button_and_widgets_plugin&amp;utm_campaign=&amp;utm_term=&amp;utm_source=https://www.pythonpo"], "copyright__copyright__copyright": [" notes.\n  \u2022 If you\u2019ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.\n  \u2022 To help other people find the show please leave a review on iTunes and tell your friends and co-workers\n  \u2022 Join the community in the new Zulip chat workspace at pythonpodcast.com/chat\n\nLinks\n\nThe intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA\n\nLiked it? Take a second to support Podcast.__init__ on Patreon!", " notes.\n  \u2022 If you\u2019ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.\n  \u2022 To help other people find the show please leave a review on iTunes and tell your friends and co-workers\n  \u2022 Join the community in the new Zulip chat workspace at pythonpodcast.com/chat\n\nLinks\n\nThe intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA\n\nLiked it? Take a second to support Podcast.__init__ on Patreon!", " notes.\n  \u2022 If you\u2019ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.\n  \u2022 To help other people find the show please leave a review on iTunes and tell your friends and co-workers\n  \u2022 Join the community in the new Zulip chat workspace at pythonpodcast.com/chat\n\nLinks\n\nThe intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA\n\nLiked it? Take a second to support Podcast.__init__ on Patreon!", " notes.\n  \u2022 If you\u2019ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.\n  \u2022 To help other people find the show please leave a review on iTunes and tell your friends and co-workers\n  \u2022 Join the community in the new Zulip chat workspace at pythonpodcast.com/chat\n\nLinks\n\nThe intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA\n\nLiked it? Take a second to support Podcast.__init__ on Patreon!"]}