<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: kokitree</title>
    <description>The latest articles on DEV Community by kokitree (@kokitree).</description>
    <link>https://dev.to/kokitree</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F194084%2F52df9f14-d9e6-4910-abbb-5f396b9194e1.png</url>
      <title>DEV Community: kokitree</title>
      <link>https://dev.to/kokitree</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kokitree"/>
    <language>en</language>
    <item>
      <title>Best CMS for blogging: Ghost vs. WordPress</title>
      <dc:creator>kokitree</dc:creator>
      <pubDate>Thu, 16 Dec 2021 04:40:06 +0000</pubDate>
      <link>https://dev.to/kokitree/best-cms-for-blogging-ghost-vs-wordpress-1o8j</link>
      <guid>https://dev.to/kokitree/best-cms-for-blogging-ghost-vs-wordpress-1o8j</guid>
      <description>&lt;p&gt;There is no doubt that WordPress dominates the blogging and online publishing world for many years. WordPress as a CMS powers nearly half of the Internet’s websites. So what’s the point to compare WordPress against Ghost, a new, free and open source blogging platform. In this review, I’m going to through the details and the points what Ghost is worth a look into. And why it should be your next content management system of choice for your new blog or project. And I think there is no exception that WordPress is popular here in the startup and tech community in Cambodia. &lt;/p&gt;

&lt;p&gt;Please note that all of websites and blogs we host and develop are based on WordPress.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ghost Content Management System (CMS)
&lt;/h2&gt;

&lt;p&gt;What's it? "Ghost is an open source blogging platform that helps you easily create a professional-looking online blog. Ghost is a robust content management system (CMS) with a Markdown editor, an easy-to-use user interface, and beautiful themes. It is easy to install and update with Ghost-CLI."&lt;/p&gt;

&lt;p&gt;Installing Ghost on a local machine&lt;/p&gt;

&lt;p&gt;I can confirm that it’s easy to install Ghost (14.x (Node v14 Fermium LTS) on your Mac machine. It’s simple and straightforward. I also tried to setup a local environment for testing a Raspberry Pi 4 (Ubuntu), but I struggled getting the compatible Nodjs version. I’m sure I’ll go back to this again.&lt;/p&gt;

&lt;p&gt;After all, this local Ghost on my MacBook Pro laptop is the first time I can see how Ghost works at the back end. Simply, it’s beautiful and neat. Or I’d say: less is more.&lt;/p&gt;

&lt;p&gt;Running Ghost static site&lt;/p&gt;

&lt;p&gt;You can install a local Ghost on your laptop, push your site to Github repository, and host it on Github page (with or without your custom domain), you can follow this easy to follow instruction: Hosting a Ghost Blog in GitHub. With small sites, you can have this nice setup for free. It's ideal for students and those who want to learn Ghost and Jamstack.&lt;/p&gt;

&lt;p&gt;Installing Ghost on a Linode virtual private server (VPS)&lt;br&gt;
What you need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A VPS (at least 1GB RAM)&lt;/li&gt;
&lt;li&gt;NGINX&lt;/li&gt;
&lt;li&gt;MySQL&lt;/li&gt;
&lt;li&gt;Node.js and NPM&lt;/li&gt;
&lt;li&gt;Ghost-CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I think it has taken me quite a while to get things right. Why? Well, because I want to re-use the existing VPS I have for Ghost installation. You can read the full installation guide here: How to install Ghost on Ubuntu. And Linode also has a documentation section on how to install Ghost CMS on Centos, Debian, and Ubuntu (and with Docker).&lt;/p&gt;

&lt;p&gt;Comparing with WordPress installation, Ghost takes on a different approach. While WordPress has its famous 5 minute installation, you mostly use Linux commands. But what I really like Ghost CMS installation is that if the first attempt fails you, you can start it all over again. Ghost doctor, Systemd, Ghost unininstall are most often used.&lt;/p&gt;

&lt;p&gt;If you install Ghost CMS on a 1GB VPS, you should be able to setup a few blogs. Each setup consume about 300MB. After installing 3 basic blogs, it's getting difficult with insufficient RAM available.&lt;/p&gt;

&lt;p&gt;Hosting several Ghost instances on one single VPS? You should read this method of using one VPS to host multiple blogs.&lt;/p&gt;

&lt;p&gt;Hosting a Ghost Blog in GitHub - the easier way&lt;/p&gt;

&lt;p&gt;Install Ghost on Raspberry Pi? There is a good blog dedicted to this. Ghost Pi blog covers all you need to know to do the same, such as using custom domain names and a CDN to optimise your blog. Check it out if you want to learn how to test it: GhostPi.&lt;/p&gt;

&lt;h2&gt;
  
  
  Moving to Ghost from WordPress?
&lt;/h2&gt;

&lt;p&gt;There is a WordPress plugin to export your WordPress database and files for this. But after downloading the Export file of this site (just under 100MB), the import tool on Ghost dashboard cannot really handle it.&lt;/p&gt;

&lt;p&gt;It says: Import failed. Request is larger than the maximum file size the server allows&lt;/p&gt;

&lt;p&gt;But it’s not the end. When exporting your WordPress database, you also have the option to download it as a Json file format. The reason is simply that Export to Ghost means download all the content (posts, pages, and image files). This is usually impossible with a lot of files. The Json file is different. It’s like an XML file. It’s way smaller because it contains only the the text content, no images. So, if you've got a huge WordPress site, it's not yet simple. It would need extra work.&lt;/p&gt;

&lt;p&gt;With a modern cloud-based server designed for WordPress, you can easily get a lightning fast, safe and secure blog. We love this setup, which is the best performance optimization for a VPS to host WordPress sites for our clients: OS: Ubuntu Server 64-bit, latest packages of Nginx, PHP, MySQL/MariaDB, and Redis, Let’s Encrypt SSL/TLS certificate. Essentially, with this kind of setup, it takes much less memory consumption to run WordPress blogs effeciently. You can actually read our in-depth review for Linode vs. Vultr vs. DigitalOcean, using SpinupWP to manage WordPress sites.&lt;/p&gt;

&lt;p&gt;**&lt;br&gt;
Blogs and sites powered by Ghost CMS**&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Buffer's social media and marketing library, Unsplash blog, OpenAI, DigitalOcean Blog, Cloudflare Blog, The Standford Review&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;My takes:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Why should you consider using Ghost in the first place? Well, if you want to use an open, stable platform, and it's fast and SEO friendly. Not PHP. If you're an experienced blogger who wants to learn something new, you should look into Ghost as your next CMS after WordPress. "Ghost is the fast, modern WordPress alternative, focused completely on professional publishing."&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Next-generation web publishing for modern media</title>
      <dc:creator>kokitree</dc:creator>
      <pubDate>Wed, 15 Dec 2021 10:38:12 +0000</pubDate>
      <link>https://dev.to/kokitree/next-generation-web-publishing-for-modern-media-gma</link>
      <guid>https://dev.to/kokitree/next-generation-web-publishing-for-modern-media-gma</guid>
      <description>&lt;p&gt;The web architecture continues to evolve. So is our approach to content publishing. There is no better way than to provide the best digital experience to the users.&lt;/p&gt;

&lt;p&gt;Are you planning to launch an online news publication? It's always a great idea to start with the best possible solution, so that you're steps ahead to serve your online audience.&lt;br&gt;
Do you want an ultra fast news media site? Safe from online attacks? Easier to maintain and scale?&lt;/p&gt;

&lt;p&gt;Read on to find out more.&lt;/p&gt;

&lt;p&gt;Powered by traditional web architecture design, most news websites encounter issues when having to serve traffic spikes: slowness, prone to online attacks, and higher cost for web servers and maintenance. But are there any way to deal with these issues?&lt;/p&gt;

&lt;p&gt;How about "a modern web development architecture based on client-side JavaScript, reusable APIs, and prebuilt Markup"?&lt;/p&gt;

&lt;p&gt;In this blog post, we're introducing our in-house web architecture solution based on Jamstack (Javascript, APIs, and Markup) with Headless CMS (Content Management System).&lt;br&gt;
Less is more&lt;/p&gt;

&lt;p&gt;Why modern media needs the next-generation web architecture? Jamstack is a combination of the 3 most robust web technologies like Javascript, APIs, and Markup.&lt;/p&gt;

&lt;p&gt;With a Jamstack web project, you don’t actually rely on server-side code — they can be distributed instead of relying on a server. Served directly from a Content Delivery Networks (CDN), your Jamstack website can handle speed, performance and offers the best user experience.&lt;/p&gt;

&lt;p&gt;"A static website contains web pages with fixed content. Each page is coded in HTML an displays the same information to every visitor. Unlike dynamic websites, they do not require any server-side operations or database design."&lt;/p&gt;

&lt;p&gt;Designed in the last couple of decades, traditional websites serve the purpose of making it easy to publish content and make it accessible. Unlike this approach of serving dynamic sites, Jamstack sites are static sites. Simplified, the design philosophy's benefits are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Faster&lt;/li&gt;
&lt;li&gt;More secure (no need to worry about server or database vulnerabilities)&lt;/li&gt;
&lt;li&gt;Easier to scale, lower cost (hosting of static files is cheap or even free)&lt;/li&gt;
&lt;li&gt;Resilient and efficient infrastructure&lt;/li&gt;
&lt;li&gt;SEO-friendly and ready&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We'll have more details on these later in this blog post.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Headless CMS?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;With a CMS you'll be handling everything in the same system.&lt;/p&gt;

&lt;p&gt;But, by combining a headless CMS with Jamstack, you've got a simplified solution, making it lightweight and portable. So what's this Headless CMS? A headless CMS will let your content travel further and do more things than you can imagine.&lt;/p&gt;

&lt;p&gt;A Headless CMS is different from your traditional CMS like WordPress that are built with back-end and front-end bundled into a single application that is web-first.&lt;/p&gt;

&lt;p&gt;So you're decoupling all of these parts and handling them separately. Why? And what the main benefits?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Need for speed? Blazing fast!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;How about shifting the workload from server-side to client-side? That's it. When we can take away as many tasks as possible and pushing them to the client side instead. We can enable fewer server requests. Thus, better performance and faster load times are the results. And to go as server-less as possible.&lt;/p&gt;

&lt;p&gt;Google has set a new standard for page-speed with the introduction of its Core Web Vitals. So the website page speed is a search ranking factor. Visitors don't like slow loading sites. No readers want to wait to read the news stories.&lt;/p&gt;

&lt;p&gt;Jamstack sites's pre-built (HTML) files served over a CDN are amazingly fast. There are interference or delays at the back-end.&lt;/p&gt;

&lt;p&gt;So, at the core, the sites are highly optimized for SEO.&lt;/p&gt;

&lt;p&gt;Cheaper and easier to scale&lt;/p&gt;

&lt;p&gt;Jamstack sites only contain just a few files with minimal sizes. And these files can be served anywhere. Scaling is a matter of serving those files somewhere else or using your CDN of choice.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fare more secure&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The simple strategy here is that by decoupling of the backend and the frontend, we can minimize the security flaws. And the connection by an API (or Git-based) between the backend and frontend and will mostly be read-only. And at the same time, it's less dependable on a database, which is always the heart of the security issue.&lt;br&gt;
Good to know&lt;/p&gt;

&lt;p&gt;Since 2015, modern web revolution of Jamstack has started to take the web world by storm. In 2019, the movement became more mainstream.&lt;/p&gt;

&lt;p&gt;What to read more: Modern Web Development on the JAMstack (Modern Techniques for Ultra Fast Sites and Web Application by Mathias Biilmann and Phil Hawksworth).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Case Study (Coming up):&lt;/strong&gt; &lt;a href="https://kiripost.com/"&gt;Kiripost&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Kiripost is a dynamic media company. Kiripost.com is a static site, which means that there is no database and is serverless. Built with Next.js, its headless CMS is WagtailCMS. Ultra fast, Cloudflare Pages is a JAMstack platform for frontend development (for its edge network and the Git integration).&lt;/p&gt;

&lt;p&gt;The essences of today and tomorrow's web standards are here, especially for online news publication.&lt;/p&gt;

&lt;p&gt;This post was first appeared on Kokitree: &lt;a href="https://kokitree.com/posts/next-generation-web-publishing-for-modern-media/"&gt;https://kokitree.com/posts/next-generation-web-publishing-for-modern-media/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>modernmedia</category>
      <category>jamstack</category>
    </item>
  </channel>
</rss>
