Hey, everyone, and welcome to another deep dive.
Today, we're taking a closer look at Neos CMS.
Neos CMS.
Is it just another system for managing your website content,
or is there something more to it?
We've got their website and a peek into their GitHub repo,
so let's see what we can uncover.
OK.
And a quick shout out to our sponsor, Safe Server.
They can help with all sorts of digital transformation
projects, including hosting tricky software.
Check them out at www.safeserver.de.
Very cool.
Now, back to Neos.
Right off the bat, their website hits you with this headline.
Easily create, manage, and optimize content that is loved.
Loved.
Catchy, right?
Yeah.
But is there any substance behind it?
Well, I think what's interesting here
is they're aiming at two different groups.
The content creators, obviously, who
need something easy to use, and then the developers,
who need that flexibility and control behind the scenes.
Yeah, it's like trying to build a car that's
both a luxury sedan and a sports car, right?
Can you really have both?
So let's look at the features and see
if it lives up to the hype.
They talk about an inline, YSI Ouija editor.
Click and type, it's that easy.
Yeah, the click and type.
Sounds great for anyone who's not a coding wizard.
That's exactly it, right?
It's for the folks who just want to focus
on the words and the images and not
have to mess with the code underneath.
So it's like working on a Google Doc almost.
Yeah, like a live collaborative Google Doc
where you see the changes as you type.
But then how do you keep things looking good?
If everyone's got free reign over this style,
it's going to be a mess.
Yeah, so Neos uses the system of predefined styles.
It's kind of like giving everyone
a set of stylish Lego blocks to build with right.
So they've got some creative freedom,
but the overall design stays consistent.
OK, so that's one side of it, the content creation part.
But what about the developers?
I mean, their get-up page is pretty bold.
It says, Neos is crafted by and for developers.
No magic happening.
You are in full control over what you do.
Wow, yeah.
That's a big claim.
Yeah, it is.
What kind of control are we talking about here?
Well, with Neos, developers can define
the structure of the content, like what types of content
the website can even handle.
They're not limited to just preset templates
or rigid structures.
So it's not a cookie cutter website
where you can really make it your own.
It's like building a custom house instead
of settling for one that's prefabricated.
I don't like that.
You have the freedom to create exactly what you need.
And I see they also have this idea of planned extensibility.
Planned extensibility.
So they're anticipating that you're
going to want to add your own stuff.
Yeah, exactly.
Like they know developers are going
to want to build their own unique features.
So they've built in all these hooks and APIs
so you can seamlessly integrate your own code.
And looking at their community, it
seems like people are taking advantage of that.
Definitely.
Over 640 free add-ons.
That's impressive.
That's a lot.
Yeah.
And speaking of community, the repository
makes it very clear.
NEOs is open source.
Open source, yeah.
What's the big deal about that for developers?
Well, it means the code is basically an open book.
Anyone can see it, understand how it works, even modify it.
Wow.
For developers, this is huge.
It means they can collaborate, contribute back to the project,
even create their own versions of the software.
So it's like a giant group project in a good way.
It is.
It is.
It's all about innovation and shared learning.
So we've got this CMS that's user-friendly,
developer-friendly, and has a strong open source community.
Yeah.
But does it actually work in the real world?
That's a crime.
Does NEOs really deliver?
That's the question.
Let's find out.
Let's look at a real-world example.
One of the case studies is Cornelson.
Cornelson, OK.
They're a big educational publisher.
And they use NEOs to manage hundreds of websites.
Hundreds.
Hundreds.
Oh, that's a lot to juggle.
Each with its own design and content.
That sounds like a nightmare.
Yeah.
It's like herding cats, but with websites.
But with websites, yeah.
But Cornelson's case study shows how NEOs
can handle these big multi-site situations.
You can manage all that content from one central place.
Oh, OK.
While still giving each website its own look and feel
and functionality.
So it's like a conductor leading a massive orchestra.
Everything's playing its part, but it all sounds harmonious?
It does.
It does.
And that's why NEOs is being used
by all sorts of organizations, big and small.
OK, so we've seen how NEOs balances those two sides.
You know, easy for users, powerful for developers,
and it can handle some pretty big projects.
But the digital world never stands still, right?
What about the future of NEOs?
That's right.
Their GitHub is all abuzz about NEOs 9.
NEOs 9, yeah.
And something called an event-sourced content
repository.
Event-sourced.
That sounds pretty techy.
What's the big deal there?
It is.
It's a big step forward.
And this event-sourced content repository, or ESCR,
is at the heart of it.
ESCR.
Yeah.
Think of it like this.
Instead of just storing the latest version of your content,
NEOs actually keeps track of every single change that's
ever been made.
So like a super detailed undo button for your whole website.
That's a good way to put it.
You can go back and see exactly who changed what and when.
That's amazing.
You can literally rewind time.
You can.
So if I accidentally delete something, I just hit undo,
and it's like it never happened.
Too much.
That's almost too good to be true.
It's not magic, but it's close.
Since every change is recorded, you
can step back through the history of your content.
You can revert to any previous state,
and you don't lose any data.
That's incredible.
So it's not just about recovering from mistakes.
It's like you have this incredible control
over how your content evolves.
Yeah, it's about having a detailed version
history for every piece of content on your site.
And I bet that's really useful for analyzing
how things are performing, too.
Oh, absolutely.
You can see how every little tweak affects your engagement
and all that.
Yeah.
You can see how a particular piece of content
has performed over time, and you can see what changes
were made along the way.
It's a goldmine for content editors and marketers.
It's like a content time machine.
It is.
OK, this event source thing is blowing my mind a little bit.
It's pretty powerful stuff.
But what about the developers?
Does this new system mean they have to learn
a whole new set of skills?
That's a good question.
And the good news is that Neos has made this transition
as smooth as possible.
They've got tons of documentation, migration tools,
code examples to help developers get up to speed.
The core principles of Neos, like the custom content
modeling and extensibility that we were talking about,
those are still the same.
So it's like getting a new phone with a faster processor,
but all your apps still work.
Yeah, exactly.
They've improved the core, but it's still
the same familiar experience for developers.
But they've also added new tools specifically
for this event source repository, right?
Oh, yeah.
They've got new tools, new APIs, all designed
to give developers more control and flexibility with how
they manage content.
This is sounding really powerful.
It is.
But what about the practical stuff?
Does it require any special setup or infrastructure?
That's an important point.
While this event source repository
is designed to be scalable and efficient,
it does require some careful thought
about your infrastructure.
Traditional relational databases,
the ones that most websites use,
might not be the best fit for this kind of system.
So you can't just throw it on any old server
and expect it to run smoothly.
Probably not.
NEOs recommends using a database that's specifically
designed for handling lots and lots of event data.
Like what?
Like a document database or a time series database.
It's like choosing the right fuel
for a high performance engine.
Oh, I like that.
You need the right stuff to make it run properly.
So it's not just about picking a hosting provider.
It's about picking the right one.
Exactly.
One that understands this whole event sourcing thing.
You need a hosting partner that can offer
the scalability, the performance, the reliability
that this kind of system needs.
Well, if any of our listeners are looking for that kind
of expertise, I know the place.
Safe Server, they're experts in all things
digital transformation.
You can find them at www.safeserver.d.
Great resource.
Now, before we move on, I want to go back
to something you mentioned earlier, the NEOs community.
The community.
It seems like every time we hit a new challenge with NEOs,
the community pops up as a key resource.
They're amazing.
What is it about this community that makes it so special?
Well, it's a really welcoming group, very active.
And they're all passionate about NEOs.
And they love to help each other out.
You can find them on the forum, in the Slack channel,
even at meetups and conferences.
They're always sharing code, answering questions,
collaborating on new projects.
Like a real sense of shared purpose, right?
It is.
It is.
It makes working with NEOs really enjoyable.
You're not just using a piece of software.
You're part of something bigger.
I love that.
It's like a club.
But for people who love building great websites.
Exactly.
So how do you actually get started with NEOs?
How do you go from this intriguing concept
to an actual working website?
That's a good question.
And the good news is that NEOs has made it really easy
to get started.
They've got a detailed installation
guide on their website.
And they even have this command line tool
that can help you create a new project in minutes.
So it's not like those old school CMSs
where you had to battle with FTP and server configuration.
No, no, no.
NEOs is all about modern development.
So getting started is a breeze.
You can have a basic NEOs instance running
on your computer or a staging server with just a few commands.
And then once you've got that basic setup,
you can start customizing it, adding your own templates,
integrating it with other systems.
That sounds pretty straightforward.
It is.
But I'm guessing there's more to it
than just clicking a few buttons.
Of course.
What are some things people need to think
about when they're first implementing NEOs?
Well, one of the first things is your hosting environment.
OK.
As we talked about before, that event-sourced content
repository, it really benefits from a database that's
designed for all that event data.
So you'll want to choose a hosting provider that
offers the right kind of database and infrastructure.
It's like making sure you've got the right fuel
for your engine.
Exactly.
You wouldn't put regular gas in a Ferrari.
Exactly.
OK, so hosting is important.
What about the development process itself?
Any challenges or best practices that people should keep in mind?
Well, one of Nios's strengths is its flexibility, how extensible it is.
Right.
But with that power comes responsibility, right?
Yeah.
It's important for developers to really embrace the Nios way of doing things.
So use the tools they give you.
Use the tools, use the APIs.
Don't try to fight the system.
Don't try to fight the system.
Exactly.
Nios has, you know, a clear architecture, a set of best practices, and it's all
designed to make development efficient.
So following those guidelines will make your projects more robust, more scalable,
and easier to maintain over time.
It's like learning the rules of the game before you start trying to break that.
Exactly.
Okay.
What about testing and debugging?
Any specific tools or techniques that are especially helpful in a Nios world?
Well, Nios has its own built-in testing framework, so you can, you can write unit
tests for your code, make sure everything's working as it should.
And for, for debugging, you can use standard PHP debugging tools.
Plus Nios has its own logging and error reporting.
And of course, the community forum is a great place to get help.
If you run into any, any tricky problems.
Not like they've got you covered.
They do, they do.
But, but realistically, every software project hits a few snags along the way.
Of course, what are some common pitfalls people encounter with Nios?
And, and is there any way to avoid them?
One common mistake is, is trying to do too much customization too early.
You know, it's, it's tempting to jump in and start building all these fancy
features, but, but it's often better to, to start with a solid foundation using
news news, core features, and then, and then gradually add, add your custom
elements as you go.
So it's like building a house, you know, start with the foundation and the
framing before you start adding the fancy finishes.
Exactly.
Okay.
It makes sense.
What about performance?
I mean, we talked about choosing the right hosting environment, but, but are
there other things developers can do to, to make sure their, their
Nios website is fast?
Oh, absolutely.
Nios has, has a bunch of tools and techniques for optimizing performance.
They've got caching mechanisms, uh, best practices for managing your, your assets,
even integration with, with CDNs.
So you can really, really fine tune it.
You can.
Okay.
So it's, it's not just about throwing more hardware at the problem.
It's about, it's about understanding Nios and, and using its, its
optimization tools the right way.
That's right.
And remember the community is a great resource for, for performance tips.
There's, there's a wealth of knowledge out there.
So don't be afraid to, to ask questions.
Always good advice.
And speaking of valuable resources, a huge thank you to safe
server for supporting this episode.
Yes.
Thank you.
If you're, if you're looking for expert advice on hosting digital
transformation, any of that, you can find them at www.safeserver.d.
Definitely check them out.
We've, we've covered a lot of ground here.
Haven't we?
We have exploring all these different facets of Nio CMS, its features, its
architecture, the community, and even the practical side of, of implementing
and developing with it.
Yeah.
As we wrap things up, I want to leave you with one, one final thought.
Nios is, it's more than just a content management system.
It's, it's a platform for, for innovation, for creativity.
It gives developers the, the power to create these really unique web
experiences and, and it gives content creators the tools they need to manage
their content effectively, whether you're a seasoned developer or, or just starting
out, I encourage you to, to check out Nios and, and see what you can create.
Thanks for joining us.
Thanks for having me.
It's been a pleasure.
Absolutely.
They're, they're really great about that.
There's, there's a forum where you can ask questions.
There's a Slack channel and, and they're even like meetups and
conferences where, where Nios developers get together.
So you're not just, you know, left out in the cold to figure it all out on your own.
No, no, not at all.
And they even offer training courses and workshops if you, if you really
want to go deep and learn best practices for, for building Nios websites.
So they've, they've really built up this whole ecosystem to, to support people
no matter what their skill level is.
They have.
Yeah.
They've, they've put a lot of effort into, into making Nios approachable.
That's awesome.
It's, it's really cool to see that kind of commitment to community.
Yeah.
Speaking of, of pushing the boundaries, let's, let's go back to that event
sourced content repository for a minute.
The E S C R.
Yeah.
The E S C R.
Yeah.
We talked about how it's, it's like having this super detailed history of, of every
change, but, but I'm still trying to wrap my head around what that means in, in
practice.
Yeah.
Can you, can you give me a real world scenario where this would be like a
lifesaver?
Sure.
Imagine you're, you're working on a really important page for your website.
Maybe it's a big product launch or an important announcement and, and someone
accidentally deletes a whole section of text in a traditional system.
You might be, you know, scrambling to restore from backups, hoping you haven't
lost too much work, frantically calling the IT department.
Exactly.
But, but with an event source repository, you can literally rewind time, you can
undo that deletion.
So you're telling me if I delete something, I can just hit undo and it's, it's
like, it never happened.
It is.
That sounds magic.
It's not magic, but, but it's close because, because every change is
recorded as an event, you can, you can literally step back through the history
of your content and see exactly who made each edit and when, so you can, you can
revert to any previous state without, without losing any data.
That's, that's incredible.
It is.
So, so it's not just about, you know, recovering from mistakes.
It's, it's about having this, this amazing level of control over, over how
your content develops over time.
You've got it.
You can even analyze how, how changes affect your engagement.
Absolutely.
You can see how a change impacted, you know, page views or, or conversions.
It's, it's really powerful stuff.
Yeah.
It's like, it's like a content time machine.
It is.
It is.
It turns content management from, from the static process into something
much more, more dynamic and insightful.
Okay.
I'm, I'm sold.
I'm officially geeking out over this, this event source thing.
It's cool stuff.
But, but I'm also wondering about the developers, you know, does this new system
mean that they, they have to learn like a whole new set of skills or use
totally different tools?
That's a fair question.
And, and the good news is that Nios has, has made this transition really,
really developer friendly.
Okay, good.
They've got, um, they've got these guidelines, they've got migration tools.
They even have code examples to help developers, you know, get up to speed
with this, this new model and the core principles of Nios, the custom content
modeling, the extensibility, those are all still the same.
So it's like, like upgrading to a new phone with a faster processor, but all
your apps still work the same way.
That's a great analogy.
Okay, good.
Yeah, they've, they've enhanced the capabilities, but, but it's still a
familiar experience for developers.
That makes sense, but, but they have created some new tools specifically for
working with this, this event sourced repository, right?
They have, they've got, um, new tools and API specifically for interacting
with this repository. So developers have even more control, more flexibility in how
they
manage content. This is sounding really, really impressive. It's a big step forward.
But I'm
also thinking about the practical side of things. Does this new approach require
any
special setup or infrastructure? Yeah, that's a crucial consideration. While this
event
source content repository is built to be really scalable and performant, it does
require some
thought in terms of your infrastructure. Traditional relational databases, the kind
that most websites
use, they might not be the ideal fit for this kind of system. So we might need
something
a little bit more specialized. You might, yeah. NEOs recommends using a database
technology
that's really well suited for this event sourced model. Like what? Like a document
database
or a time series database. These types of databases are designed for handling high
volumes
of data that's constantly being added to, which is exactly what we're talking about
with event sourcing. So it's not just about choosing any random hosting provider.
Right.
You need one that really understands the ins and outs of event sourcing. Exactly.
And ideally
you want a hosting provider that has experience with NEO CMS specifically. So they
can give
you that tailored support, that guidance to make sure everything runs smoothly. To
make
sure you get the most out of NEOs. Well, speaking of valuable resources, you know,
this episode
is sponsored by Safe Server. Yes. And they happen to be experts in hosting and
digital
transformation. They are, yeah. So if you're looking for a reliable partner to help
you
navigate the world of NEOs and event sourcing, you can find them at www.safeserver.d.
Definitely
check them out. Now, before we move on, I want to go back to something you
mentioned
earlier, the NEOs community. Community, yeah. It seems like they play such a huge
role in
making this CMS so, so approachable. They do. Especially for new developers.
Especially
for new folks. Can you tell me a little bit more about what makes this community so
special?
Well, it's really the people. They're so welcoming and helpful, and they're all
really
passionate about NEOs. You can find them on the forum, on Slack, at meetups and
conferences.
They're always willing to share their knowledge, answer questions, help out with
problems.
It's amazing how much a strong community can contribute to an open source project.
It really
does create this feeling of shared ownership. It does, and that sense of community
is one
of the things that makes working with NEOs so enjoyable. It's not just using a
piece
of software. It's being part of something, something bigger. Yeah, I love that. It's
like being a member of a club, but for people who build awesome websites. Exactly.
So how
do you actually get started with NEOs? How do you go from this intriguing concept
to
a working website? Well the good news is that NEOs has made the setup process
really straightforward.
They have a detailed installation guide on their website, and they even have this
command
line tool that can help you create a new NEOs project in minutes. So it's not like
those
old CMSs where you had to wrestle with FTP and server configurations just to get
the
basic framework up and running. No, no, no. NEOs is all about modern development
practices.
So the initial setup is a breeze. You can have a basic NEOs instance running on
your
computer or a staging server with just a few commands. And once you have that
foundation,
you can start customizing it, adding your own templates, integrating it with other
systems.
That sounds pretty straightforward. It is. But I'm guessing there's more to it than
just
clicking a few buttons. Of course, of course. What are some things that people
should think
about when they're implementing NEOs for the first time? Well, one of the first
decisions
you'll need to make is about your hosting environment. Okay. As we discussed
earlier,
the event-sourced content repository in NEOs 9, it can really benefit from a
database that's
specifically designed for handling high-volume event data. So you'll want to choose
a hosting
provider that offers the right type of database and infrastructure to support NEOs
effectively.
So it's like making sure you've got the right fuel for a high-performance engine.
Exactly.
You wouldn't put regular gas in a Ferrari. That's true. You need a hosting
environment
that can keep up with the demands of your NEOs project. So finding the right
hosting
partner is crucial. Yes, it is. But what about the development process itself? Are
there
any particular challenges or best practices that developers should keep in mind
when they're
building with NEOs? Well, one of NEOs' greatest strengths is its flexibility and
extensibility.
Right. But as they say, with great power comes great responsibility. It's important
for developers
to really embrace the NEOs way of doing things. So use the tools they give you. Use
the tools,
use the APIs. Don't try to fight the system. Don't fight the system. Exactly. NEOs
has
a clear architecture. It has a set of best practices, and it's all designed to make
development
efficient and maintainable. So by following those guidelines, developers can create
these
really robust and scalable NEOs projects that are easy to extend and maintain over
time.
It's like learning the rules of the game before you start trying to bend or break
them. Exactly.
Okay, what about testing and debugging? Are there any specific tools or techniques
that
are especially helpful in the NEOs environment? Well, NEOs has a built-in testing
framework
that makes it really easy to write unit tests for your code, which helps ensure
that all
your custom functionality is working correctly. For debugging, you can use standard
PHP debugging
tools along with NEOs' own logging and error reporting mechanisms. And of course,
the community
forum is always a great resource for troubleshooting and getting help from other
developers.
So it sounds like they've really, really thought of everything.
They really have, yeah. But realistically, you know, every software
project runs into some bumps in the road. Of course, of course.
What are some common pitfalls or challenges that people often encounter with NEOs,
and
is there any way to avoid them? One common mistake that I see people make
is trying to do too much customization too early on in the project.
It's tempting to just dive in and start building all these fancy features right
away, but it's
often wiser to start with a really solid foundation, using NEOs' core features, and
then gradually
add custom elements as needed. It's like building a house, right? You start
with the foundation and the framing before you start adding the fancy finishes.
Exactly, and by taking a more iterative approach, you can ensure that your project
stays manageable
and that your custom code works seamlessly with the core NEOs framework.
Makes sense, makes sense. What about performance? I mean, we talked about choosing
the right
hosting environment, but are there other things that developers can do to make sure
their
NEOs website is fast and responsive? Oh, absolutely. NEOs offers a variety of tools
and techniques for optimizing performance. They've got caching mechanisms. They've
got
best practices for managing assets. They even have integration with content
delivery networks.
So you can really fine-tune things? You can. And by implementing those strategies,
you can make sure that your website loads quickly and provides a smooth user
experience.
It's not just about throwing more hardware at the problem. It's about understanding
how
NEOs works and using its built-in optimization tools effectively. Exactly. And
remember the
community is a fantastic resource for sharing performance tips and best practices.
There's
a wealth of knowledge out there. That's great advice. And speaking of valuable
resources,
a big thank you to SafeServer for supporting this episode. Thank you, SafeServer.
If you're
looking for expert guidance on hosting digital transformation or anything in
between, you
can find them at www.safeserver.dd. Well, we've covered a lot of ground in this
deep dive
into Neos CMS. We have. We have. We've explored its features, its architecture,
its community,
and even the nuts and bolts of implementation and development. It's been a great
overview.
As we wrap things up, I want to leave you with one final thought. Okay. Neos is
more
than just a content management system. It is. It is. It's a platform for innovation,
for creativity. It gives developers the power to create truly unique web
experiences. Yeah.
And it provides content creators with the tools they need to manage their content
effectively,
whether you're a seasoned developer or just starting out. I encourage you to
explore the
world of Neos and see what you can create. Thanks for joining us on this deep dive.
Thanks for having me. It's been a pleasure.