Content Modeling 101
AI Generated Video Summary
This Talk provides an introduction to content modeling and its importance in organizing content for teams. It explores the top-down approach to simplify and make content models more reusable, using a recipe app as an example. The Talk also highlights the best practices for content modeling, including considering reusability, rendering for end users, content governance, platform considerations, and continuous iteration.
1. Introduction to Content Modeling
Hey everyone, welcome to my talk, Content Modeling 101. I will discuss the importance of content modeling and how it helps organize content for the entire team. Let's dive into modeling a content for an app, specifically a recipe app. I learned about the top-down approach, which simplifies the content model and makes it more reusable. I created a JSON schema for the recipe content model, including title, description, ingredients, instructions, and images.
Hey everyone, and welcome to my talk, Content Modeling 101. Now, my name is Harsh Lagrawal, and I am originally from India, living in Berlin for 15 months now, and I work as a developer advocate at Contentful. And one of the fun parts I love about my job is that I get to experiment a lot with different technologies and framework, and share this learning with the wider community. So you can find about all these experiments and crazy stuff that I do on my website, or feel free to follow me on Twitter. Also, this is my first time in Amsterdam, so if you have any recommendations, please do let me know.
So today, I am going to talk about content, because in the past two years the amount of content that we have generated has been massive. I mean, almost everyone out there has been involved in creating content in some form or the other. And last year in November itself, during the Black Friday sale, we saw a massive amount of incoming requests being made to our Contentful APIs. The GraphQL API request increased by 550%, and the Content Delivery API, or the CDA, increased by 73%. And that was just in one month. And so I feel, as a developer, it is our duty to make sure that we are creating an amazing experience not just for our end users, but for our team as well. And that is where content modeling comes into the picture. But the question is, what is content modeling? So a content model basically gives structure and it helps you to organize your content. Now keep in mind, that not all content creators and designers have that technical expertise like us. Hence, the goal over here is to create a content model that will support the needs of the entire team, from content creators, designers, to developers.
Enough of the theory, let's try to get into action and try to model a content for an app. And this is an app that I am working on and I want to create for myself, because I have taken cooking as a hobby recently and I want to try out to build an app that I can store all my recipes and maybe share it with everyone else. And I want to build this because I am a programmer and I have the superpower to do that. But anyways, there are a few things that I learned when I was researching for this and I started working on it, and in the next couple of slides I will be talking about that. And one of the major things that I learned was about the top-down approach, because it helped me break down my content model and I was able to simplify the content model and make it more reusable. So I started playing around with the JSON schema and I created this JSON schema. So I have a content model which has a recipe which contains the title, a description, ingredients. Now if you see ingredients is an array and I'm going to come back to that. And then there are instructions and then the images. Once I had the JSON schema and I kind of had the visual representation of what I wanted to do, I simply translated it into the content model in Contentful and you can already see all this in Contentful. Now if you see or focus on the ingredients it says references, many. So what I went ahead and did was I created a different content type for ingredients. So if you go one layer deep this is what the ingredient JSON type JSON schema looks like. The ingredient has a name and it has a type. Now I am vegetarian.
2. Content Modeling Best Practices
For content modeling, it's important to consider reusability and how the content will be rendered for the end user. Content governance, platform considerations, and continuous iteration are also key. Check out our learning center and developer portal for more details.
I don't eat meat. So for me I need to make sure you know what kind of ingredients I'm adding over there and it makes it easy for me to classify as well. So the type over here is again another content type and I'm sorry I'm repeating types too many times. So this is how it looks like in Contentful again.
Now I'm not going to go into the ingredient type because it's kind of similar but I wanted to give you a quick view of how different content types are connected with each other. So there's recipe which is referencing the ingredients. Recipe is referencing to ingredient type and recipe is also referencing to acid. So one of the important features of content modeling is reusability.
Now taking this example of the cookbook, a lot of the ingredients are used in a lot of different recipes and adding each of these recipes, sorry, these ingredients to each of these recipes individually does not make a lot of sense. And I personally believe that developers are kind of lazy and they always want to find the quickest and the shortest way to do stuff, so that's where reusability comes into the picture.
The next is a content model does not just do content, it also embodies the decision about how you want to render the content for the end user, how your team should publish and display the content. And we refer to this constellation of issues as content governance. And you also need to think about the platform, where and how will the users interact with your content. Is it just going to be only on the web? Are you going to go ahead and build a mobile application? Are your users gonna get this information on a voice enabled application? So that is one of, that is the other feature that you need to think about.
And lastly, remember, nobody gets content model right in one pass. It's a continuous process, so keep on iterating over it. Get the feedback from your team, from your users, and keep making changes. And if you want to learn more about content model or contentful, hop on to our learning center. We have some amazing courses where you can learn about them in much more details. We also have a developer portal if you want to just get started, look at the developer resources that we have. That's the correct place to go. And we are here at the booth and we have an interesting giveaway. So come say hi at the booth, grab some swags, and maybe participate in the giveaway.