Compare and Contrast: Utterances, Disqus, and Giscus

Comment Systems Comparison (2025 Update) As in 2025, the landscape of comment systems for Hugo blogs has evolved significantly. Utterances, Disqus, and Giscus remain the top contenders, but with important updates and new considerations. Let’s examine the current state of each platform. Performance Comparison Table Parameter/Metric Utterances Disqus Giscus Setup Complexity Medium Easy Easy Performance Impact Minimal Heavy Minimal Privacy Excellent Poor Excellent Cost Free Free (with ads) / $11-99/month Free Data Ownership Your GitHub repo Disqus servers Your GitHub repo Customization Limited Extensive Good Mobile Experience Good Excellent Excellent SEO Impact Positive Negative Positive Spam Protection GitHub-based Advanced AI GitHub-based Moderation Tools GitHub Issues Advanced dashboard GitHub Discussions Analytics Basic (GitHub) Comprehensive Basic (GitHub) Community Size Stable Large Growing rapidly Dependency on Third Party GitHub only Disqus servers GitHub only Offline Functionality No No No Accessibility Good Excellent Excellent Dark Mode Support Yes Yes Yes Markdown Support Yes Limited Yes File Upload No Yes No Real-time Updates No Yes Yes (2025 update) API Access GitHub API Disqus API GitHub API AI Integration No Yes (2025) No GDPR Compliance Excellent Good Excellent Sustainability High Medium High Implementation Overview Aspect Utterances Disqus Giscus Architecture GitHub Issues as backend Centralized cloud-based platform with AI integration GitHub Discussions as backend with real-time updates Setup Process GitHub repo + Utterances app installation Sign up, get embed code, paste into templates Similar to Utterances but uses Discussions instead of Issues Integration Method Simple script injection with configurable parameters Universal embed code with extensive customization options Modern script with better GitHub integration and real-time capabilities Data Flow Comments → GitHub Issues → Display via GitHub API Comments → Disqus servers → Display via Disqus API Comments → GitHub Discussions → Display via GitHub API with WebSocket updates 2025 Status Stable, mature platform with consistent updates Enhanced with AI moderation and improved performance Rapidly growing, added real-time updates and improved mobile experience Pros Privacy-focused, no ads, full data control, battle-tested Feature-rich, excellent moderation tools, large community, AI-powered spam detection Modern interface, better GitHub integration, privacy-focused, real-time updates, excellent mobile UX Cons Requires GitHub account, limited features, no real-time updates Privacy concerns, performance impact, data ownership issues, subscription costs Requires GitHub account, newer platform (less mature than Utterances) Market Trends Privacy-First Movement Growing demand for privacy-focused comment systems GDPR compliance becoming mandatory for EU visitors Third-party script blocking more prevalent (ad blockers, privacy tools) Performance Optimization Core Web Vitals increasingly important for SEO Mobile-first indexing making performance critical Lighthouse scores affecting search rankings AI Integration Disqus leading in AI-powered moderation and spam detection Automated content filtering becoming standard Smart reply suggestions enhancing user engagement Final Verdict 🏆 Recommendation: Giscus ...

June 27, 2025 · 4 min · 800 words · Ken Cho

Red Hat Enterprise Linux Technical Overview

Course Content What is Linux, Open Source Software, and a Distribution? Introduction to the Shell 2.1 Prompt $: normal user 2.2 Prompt #: root user 2.3 ls: list directory contents 2.4 ls -a 2.5 ls -all 2.6 ls --all 2.7 ls -l file1 dirA 2.8 crontab: maintains crontab files for individual users Kernel and User Spaces, kernel is the heart of Linux operation system 3.1 Process with unique ID User process associate with a particular user, fg and bg Daemon process eg, network services or other house keeping tasks to keep the system running Kernel threads part of the kernel that are running as if they were regular user processes or system daemon, but are not associated with the terminal, they are part of the kernel, but they are still scheduled as if there were regular processes ps: get process information ps -ef: show all process information with detail Orientation to the Graphical User Interface 4.1 GNOME3 ...

May 5, 2021 · 3 min · 561 words · Ken Cho

How to add favicon to a Hugo page

What is a favivon A favicon is a small 16×16 pixel icon that serves as branding for your website. Its main purpose is to help visitors locate your page easier when they have multiple tabs open. Where to find favicon? Go to favicon.io to select the suitable one. Steps Go to favicon.io Download the favicon.zip and unzip Place the files in /static/image/ Add the following code to /layouts/partials/header.html <link rel="icon" href="/image/favicon.ico" type="/image" /> <link rel="apple-touch-icon" sizes="180x180" href="/image/apple-touch-icon.png"> <link rel="icon" type="image" sizes="32x32" href="/image/favicon-32x32.png"> <link rel="icon" type="image" sizes="16x16" href="/image/favicon-16x16.png"> <link rel="manifest" href="/site.webmanifest.json"> Edit the site.webmanifest in static folder { "name": "", "short_name": "favicon", "icons": [ { "src": "image/android-chrome-192x192.png", "sizes": "192x192", "type": "image/png" }, { "src": "image/android-chrome-512x512.png", "sizes": "512x512", "type": "image/png" }, { "src": "image/apple-touch-icon.png", "sizes": "180x180", "type": "image/png" } ], "theme_color": "#ffffff", "background_color": "#ffffff", "display": "standalone" } Where to check the final implementation Go to Favicon checker ...

October 27, 2020 · 1 min · 154 words · Ken Cho

College Algebra in 7 hours

Learn Collage Algebra Calculus(later…), here Todo Done Reference freecodecamp Algebra YouTube Calculus YouTube

July 28, 2020 · 1 min · 13 words · Ken Cho

How to implement Travis CI to a Hugo site

What is Travis? Travis is a continuous integration testing tool that integrates with GitHub. It allows you to run automated tests on your code each time a commit is made to the repository. How? Sign in Travis in https://travis-ci.org/ using github account. Enable Source github repo in Travis setting, eg.kencho51/gigathing Create Personal access token in github, the scopes include: repo admin:public_key admin:repo_hook user Copy the token generated and update the Travis Environment Variables as below: GH_TOKEN: paste the github GITHUB_EMAIL: [email protected] GITHUB_USERNAME: kencho51 Create .travis.yml at the directoyy top level language: go dist: xenial env: - HUGO_VERSION="0.74.2" before_install: - sudo apt-get update -qq install: true before_script: - wget https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_Linux-64bit.deb - sudo dpkg -i hugo_${HUGO_VERSION}_Linux-64bit.deb - rm -rf public || exit 0 script: - hugo --gc -v --minify deploy: provider: pages skip_cleanup: true keep_history: true github_token: $GH_TOKEN local_dir: public target_branch: master email: [email protected] name: kencho51 repo: kencho51/kencho51.github.io verbose: true on: branch: master Insert build status into default template, every post will have build status on it. Markdown format: [![Build Status](https://travis-ci.org/kencho51/gigathing.svg?branch=master)](https://travis-ci.org/kencho51/gigathing) Image URL: https://travis-ci.org/kencho51/gigathing.svg?branch=master Reference Using Hugo and Travis CI To Deploy Blog To Github Pages Automatically Two ways to deploy a public GitHub Pages site from a private Hugo repository DEPLOY HUGO TO GITHUB PAGES AND BUILD WITH TRAVIS CI 使用 Travis CI 部署 Hugo 博客到 Github Pages Deploy Hugo from Gitlab CI to Github Pages How I use Travis CI to automatically deploy this blog to GitHub Pages How to deploy Hugo site minimally ...

July 23, 2020 · 2 min · 244 words · Ken Cho