Git structure for easy collaboration: monorepo vs. multirepo?

Lately, while working on team projects, I hear this
concern a lot: "Our services are growing, and we're building multiple apps… Is it really okay to keep pushing everything into one repository?"
At first, it was convenient for everyone to work together in a single GitHub repository. But as
the number of files grew and CI/CD configurations started getting messy, the dilemma of 'monorepo vs. multirepo' gradually began.

I've been there too. When I was developing solo, I didn't think much about it, but once the team grew to about 3-5 people, the problems immediately surfaced.
Branch conflicts, test speed, PR merge order… each one directly impacts collaboration productivity.

So in this article, for those wondering like me, "How far should I go with one
repository?", I've summarized the differences between monorepos and multirepos, their pros and cons, the right timing for switching, and even practical structure examples.

I've broken it down step-by-step, from supermarket analogies to hands-on Git command practice
, so even if you're new to development, you can understand it. If you're currently debating your structure, use this article to get organized!

📌 Monorepo vs. Multirepo: Defining the Concepts

  • Monorepo: A method
    where the code for multiple projects (services) is managed together in a single repository.
  • Multirepo: A method where each
    project or service uses its own separate repository.

🪄 Monorepo vs. Multirepo Analogy (Think of it this way!)

  • A monorepo is like a single large supermarket where all items are stocked. You can buy everything
    you need in one place. It's efficient and fast.
  • Multirepo is like a market with separate fruit shops, bakeries, and butcher shops.
    Specialization is strong, but you have to visit multiple places.

💡 Usage Example (Actual Folder Structure)

Monorepo Structure Example

project-root/
├─ core/ # 핵심 기능 모듈
│ ├─ module1/
│ ├─ module2/
│ └─ ...
├─ apps/ # 사용자-facing 앱들
│ ├─ app1/
│ ├─ app2/
│ └─ ...
├─ shared/ # 공통 코드
│ ├─ security/
│ └─ quality/
├─ infra/ # 배포, 도커 등 인프라 설정
├─ .github/
│ └─ workflows/ # GitHub Action 자동화 설정
└─ tasks.json # 작업 관리용 설정 파일

Example Git Branch Strategy

BranchDescription
mainStable version, used for actual deployment
devBranch for integrating and testing multiple features
feat/Personal branch for new feature work → Merge into dev (PR)

🔄 Steps for a natural transition to multi-repository

  1. If a specific app is managed by a separate team, isolate only that app folder into a new repository. bash copy editgit filter-repo --subdirectory-filter apps/app1 --force
  2. Common code shared/ Reuse by separating directories into internal packages or submodules
  3. Set up CI/CD automation independently for each app (enabling separate deployments)

🧠 Where is it used? (Pros and cons of each approach)

✅ When a monorepo is advantageous

  • Project initiation phase
  • When the team is small (2-5 members)
  • When features frequently impact each other
  • When you want to test and make changes quickly

✅ When multi-repository is advantageous

  • When the project grows large and services become completely independent
  • When multiple teams develop in parallel
  • When separate deployment or security permissions are required per service

✅ Quick tip summary!

Start with a single repository (mono), split it when it grows (multi)!

🚀 Actionable steps to implement right now (Practical example)

(1) Create GitHub repository + initialize

gh repo create my-monorepo --private
cd my-monorepo && git init

(2) Create folder structure scaffold & make first commit

git add .
git commit -m "chore: initial scaffold with core & apps"
git push -u origin main

(3) Set up automated testing with GitHub Actions (.github/workflows/ci.yml)

name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: pip install -r requirements.txt
- run: pytest

(4) Set up VSCode workspace

  • .code-workspaceInclude the core/, apps/ Include the folder to enable search and testing in one go

(5) Adding Release Tags

git tag -a v0.1.0 -m "MVP scaffold"
git push origin v0.1.0

Now you can start with a monorepo for easy management, and when
things scale up, you can naturally transition to a multirepo setup! 😄

1. API basics – Understanding APIs and databases (DB)

When using the AI currently in service, you'll likely try using the API. Before using the API, understanding its role and basic concepts will greatly help you utilize it more effectively.

This article explains the concepts of APIs and databases (DB) in a simple and clear way.
An API doesn't store data directly; it acts as a "mediator for sending and receiving.
" To store data permanently, you need to connect it to a database (DB).

1. APIs don't store data—they act as a "data conduit"!

An API is essentially a data conduit (messenger). Simply put, it facilitates the exchange of data between clients (websites, apps) and servers (backend).

📌 Example Scenario (Drama Review System)

To understand how an API actually works, let's use a "drama review system" as an example.

1️⃣ User leaves a review for "My Mister".
→ The user writes the review on the website and clicks the submit button.

2️⃣ The API receives the user's request and stores it in the database (DB).
→ The API receives the data and saves it to the server's DB.

3️⃣ Another user requests, "Show me reviews for
'My Mister'!" → The API retrieves the drama review from the DB and delivers it to the user.

4️⃣ The user views the review data.
→ The website displays the data delivered by the API.

📌 Important Concept!

  • ✅ The API itself does not store data!
  • The API only retrieves data from the DB or puts data into the DB.
  • To persistently store data, you need a database (DB)!

The API itself does not store data; it only fetches or inserts data from/into the DB. To persistently store data, you need a DB (database). Major DBs include MySQL and MariaDB.

Think of a DB as a storage system that efficiently manages data and enables integration with programs. The core of storage management, or DB management, is SQL. SQL can be categorized into two types: relational databases and non-relational databases. We'll explore database details in more depth below.

2. API + Database (DB) connection is required.

For an API to exchange data properly, it must be connected to a database (DB). Let's now understand how APIs and DBs work together.

Basic Role of an API (Request & Response)

API Request → "Please store this data in the DB!"
API Response → "I'll retrieve this data from the DB and display it!"

  • When storing data (when a user leaves a review): The API receives the data and stores it in the DB
  • When retrieving data (when a user views a review): The API fetches the data from the DB and delivers it to the user

For example, when writing a Netflix review, the review is stored in the database. When a user wants to view reviews, the database delivers the data to the user, allowing them to see reviews written by other users.

3. The API doesn't store data—the database does!

✔️ Key concept: The API "moves" data, while the database "stores" it.

📌 What if there's no DB?

  • Even if the API receives data, it has nowhere to store it, so the data vanishes! 😱
  • For example, if a user leaves a review but there's no DB, refreshing the page would make the data vanish.

📌 How to keep data stored?

  • An API is merely an "intermediary" and has no data storage capability.
  • To persistently store data, you must always use API + DB together.

4. What is a Database (DB)?

A database (DB) is a storage system that permanently stores data.

  • All data you see on websites or apps like Naver (member information, posts, comments, reviews, etc.) is stored in a DB.
  • The API plays the role of putting data into or retrieving data from this DB.
  • Features of a DB
    • ✅ Can store data permanently
    • ✅ Easily manages large volumes of data
    • ✅ Multiple users can access it simultaneously

📌 Example: Drama review database

IDUserDrama TitleRatingReview Content
1contentMy Mister⭐⭐⭐⭐⭐It was such a moving drama T_T
2flowMr. Sunshine⭐⭐⭐⭐☆You can't watch it without tears…

As described above, when a user writes a rating and review for a drama title, it is stored in the AP RK database. This allows other users to view the review later when they access it.

Learn the concept of branches & how to use them for Git beginners

For beginners new to Git, you might wonder, "Why divide things up so
complicatedly?" or "Can't I just save and push?" That's why this time, I'll break down why branch strategies are needed, when to use them, and when they're useful for situations beginners face—all explained simply.

🍊 Git Branch Strategy, Made Easy for Beginners!

💡 Why do you need a Git branching strategy?

If you're working on code alone, using just the main branch is perfectly fine.
But if any of the following situations apply? A branch strategy is absolutely essential.

✅ 3 Essential Scenarios

ScenarioDescriptionWhat Git Branch Strategy Solves
Development by more than one personMultiple people editing simultaneously → Risk of conflictsWorking individually feat/*Work individually → devthen merge, minimizing conflicts
Accidentally breaking the codeApp errors caused by incorrect modifications during codingmainAlways maintain a stable state! Keep experiments devin
Experimenting with new featuresDeveloping unvalidated featuresfeat/*Experiment freely in [branch name], then get reviewed and merge

🤔 Common beginner issues vs. branch strategy

Common ProblemsChanges After Implementing Branch Strategy
"I don't know what I changed"Track history with commits & branches
"I broke the whole app while fixing one feature"feat/*Experimentation, mainAlways functions normally
"We're working together, but our code keeps getting tangled"Minimize conflicts by following: Branch → Review → Merge

🔍 When should I use which branch?

SituationBranch to useDescription
When creating a new featurefeat/기능명This is my workspace. Feel free to experiment!
When you've finished building the feature and are ready to sharePR → devAutomated testing + reviewer review
When deploying the service to usersmainOnly deploy error-free code (release tags are also created at this stage)
When urgently fixing errorshotfix/이름Fix immediately and mainand merge immediately (version tags are also created)

🧠 Core Summary Reorganized with an analogy

ConceptAnalogyRole
main🏛 Deployable Exhibition HallOnly displays completed works
dev🧪 LaboratoryWhere artists' works gather for review
feat/*🎨 Private StudioA space where each artist is engaged in creative activities

🧪 Practice Routines Beginners Can Try

🌱 1. Try applying branch strategy for the first time

# 1. dev 브랜치에서 최신 코드 받아오기
git checkout dev
git pull

# 2. 새로운 작업 브랜치 생성
git checkout -b feat/hello-api

# 3. 작업 + 저장
echo "Hello API!" >> api.py
git add api.py
git commit -m "feat(api): 인사 API 스텁 추가"

# 4. GitHub로 푸시 + PR 만들기
git push --set-upstream origin feat/hello-api

🔐 Security & Mistake Prevention Tips

ItemPoints to noteAction
Committing Sensitive Information.env, 비밀번호, API 키 etc..gitignoreExclude and verify before committing
Force Push (--force)Misuse may overwrite collaborators' workNever decide alone; notify via Slack when sharing is needed
Branch name errorsTypos or duplicatesEstablish naming conventions beforehand and verify before starting work
GitHub public reposAccidentally pushing sensitive filesUpload only code to public repos; separate configuration files

🎯 Summary: Practical Branch Strategy for Beginners

Action ItemsDescription
✅ Before working git pullAlwaysPrevent conflicts, reflect latest code
✅ One branch per featureIncrease focus and simplify history management
✅ Commit frequently in small incrementsmakes it easier to revert later
✅ Always request a code review after a PRPrevents mistakes and aids growth

🚀 Final tip: Start like this!

  1. Create a branch today dev Create a branch today.
  2. .gitignore Create a file to block sensitive files!
  3. Create a branch, README.md and practice the entire process: make changes → create a PR → request a review!

📚 Git and GitHub Glossary of Common Terms

1️⃣ Simplifying Git and GitHub Concepts

📌 What is Git?

  • One-line definition: It's a tool that stores and manages the history of changes to your code or files on your computer.
  • An easy analogy: It's like
    a diary📓 I keep. I write
    entries daily to add content, and I can edit or delete them.
    Plus, I can always revisit entries from past dates.
  • A program installed on my computer:
    Git is a program that runs directly on my computer.

📌 What is GitHub?

  • One-line definition: It's a website where people who use Git share and collaborate on files and code online.
  • An easy analogy:
    Think of it as a library📚. If you
    want to share your diary (Git) with others or collaborate, you need to upload it to the internet, right?
    GitHub is the space where you upload that diary so multiple people can view it together or edit it collaboratively.
  • A website separate from your computer:
    GitHub is a separate service existing on the internet (web), not on your computer.

📌 What is GitHub Desktop?

  • One-line definition: It's a graphical program (click with your mouse) that makes using Git and GitHub convenient.
  • An easy analogy: It's like
    a TV remote🎮. You could press buttons directly on the TV (GitHub), but using a remote is more convenient, right?
    GitHub Desktop helps you use Git and GitHub easily and simply.
  • GitHub Desktop is a program you install on your computer, while your work is stored on GitHub (the web).

2️⃣ Common terms for Git and GitHub

🖥 Common Git Terms

TermMeaning (Even elementary school students can understand!)
RepositoryA folder📁 where I store my projects or files
CommitThe act of saving your work after finishing it (like writing a daily entry in your diary!)
BranchA space to work on new features or experiments separately from the main code (Think of it as a practice notebook📄!)
MergeThe process of combining multiple branches (practice pads) back into the main branch
PushUploading modified files from your computer to GitHub (like submitting your notebook to the library!)
PullDownloading the updated content from GitHub to your computer

🌐 Common terms used on GitHub

TermMeaning (Even elementary school students can understand!)
ForkCopying someone else's project to your GitHub (like copying a friend's notes and making them your own!)
Pull RequestRequesting that your work be incorporated into the original project (Like having your homework checked by the teacher!)
IssueA board for recording and discussing problems or suggestions that arise in the project (Feels like a Q&A board📝!)
CloneCopying a GitHub project to your computer (Like borrowing a library book!)
ActionsA feature that automatically executes tasks like code testing and deployment (think of it like an automation robot🤖!)

3️⃣ Easily Understand the Structure (Let's recap!)

QuestionsSimple Answer
Is Git installed on my computer?Yes, Git is a program installed on my computer.
Is GitHub installed on my computer?No, GitHub is a website you use on the internet.
Where do I install GitHub Desktop?GitHub Desktop is a program you install on your computer to help you easily use Git and GitHub.

So, the structure is like this:

내 컴퓨터
├─ Git (변경 이력 관리)
├─ GitHub Desktop (편리한 관리 도구)

인터넷
├─ GitHub (코드를 저장하고 협업하는 곳)

✅ Quick tip to remember (don't forget!)

  • Git is my diary📓!
  • GitHub is a shared library📚!
  • GitHub Desktop is the remote control🎮 that makes it easy to use!

Step 3: Turn emotion into creation: When emotion flows, it becomes content.

Why You Shouldn't Bottle Up Your Emotions

  • Emotions are energy. Suppress them and they stagnate; express them and they become propulsion.
  • When you turn yourself into a story, experience becomes resonance, not just information.
  • Documenting loss creates your own narrative, and that narrative becomes your brand asset.

"Because of you, a whole world was born." A single line can become your life's mission statement.

Loss is not the end. If the one who sprinkled color has left, we who remain become the palette." Turn
sorrow into creation, regret into service, longing into ideas that change the world, and pain into seeds of endurance.

Methods for materializing emotions into creation

  1. 72 hours after the shock: Capture and record raw emotions using a memo app or voice recorder.
  2. Week 2: Extract core keywords from the raw material and store them as 'content seeds'.
  3. Month 3: Develop the seeds into concrete service/project concepts. (e.g., **ting, hub, flow, t*v*)

The process of turning emotion into a service

StageObservable ObjectState VariablesExecution Tip
RecordEmotion Source (Text·Voice)raw_feelingShort-form recording using the "one-line advice"
method
StructuringKeywords·Metadatafeeling_tag, intensityLabeled with 8 emotions and intensity levels
ReinterpretationService Conceptidea_statusLink to User Personas → MVP Design

Concretize emotions by version
, like code
Sadness v1 → Insight v2 → Service v3

 Things that concretize the emotions I felt

EmotionTransformedApril 21, 2026 Result Forecast
(Happiness Circuit)
ChallengeVlog release one year later"Storytelling that ages with time" experiment
Excitement, RegretOne Line UpSNS Reach Rate Increased by 220%
Excitement, fear, not knowing what to do,Service MVPMonthly active users surpass 3,000
AnnoyanceService MVPMonthly users sharing the same thoughts

2025 Global Major Tech & AI Summit List: Developer-Designer-Founder Must-Do List

In an era of rapidly evolving technology where AI has become part of daily life, competitiveness now hinges on "which platform provides what insights," transcending mere tools.

While numerous global tech summits will be held in 2025, we've curated the top 10 summits across key fields—AI, cloud, data, design, and startupsthat deliver genuine insights, organized by category and timing.

We encourage all tech players—developers, founders, designers, and planners—to check them out.

🌍 2025 Global Major Tech & AI Summit List

Summit NameSchedule (Tentative)FieldKey ContentRecommended Attendees
AWS SummitMay 14-15, 2025Cloud / AI / SaaSAWS AI Services, Serverless Architecture, Startup Case StudiesDevelopers, CTOs, Startup Operators
Snowflake SummitJune 23-26, 2025 (Las Vegas, USA)Data / Analytics / AutomationData Engineering on Snowflake, AI Model IntegrationData Analysts, BI Teams, Data Startups
OpenAI Dev DayEarly November 2025 (Online/San Francisco)Generative AI / APILatest Feature Releases: GPT, Embedding, Assistant API, and MoreAI Developers, Planners, AI Startups
Google Cloud NextApril 8–10, 2025 (Las Vegas)Cloud / AI / InfrastructureVertex AI, Firebase, AI App BuildingCloud Engineers, App Developers
Microsoft BuildMay 2025 (Online and Seattle, USA)Copilot / GitHub / AzureMicrosoft-based productivity, AI agents, Dev Tool release.NET, GitHub Copilot users, PM
Figma ConfigScheduled for June 2025 (San Francisco + Online)Design / Collaboration ToolsDesign Systems, Dev-Design Collaboration AutomationDesigners, Frontend Developers, UX Planners
SXSW (South by Southwest)March 7–15, 2025 (Austin, USA)Culture / Entrepreneurship / Future TechnologyAI, Creativity, Content Business, Insight TrendsEntrepreneurs, Cultural Planners, Content Creators
Notion Block by BlockScheduled for Q4 2025 (Online)Workflow / ProductivityNotion API, Automation, Collaboration Case StudiesTeam Leaders, Marketers, Notion Users
AI for Good SummitScheduled for July 2025 (Geneva, Switzerland or online)Ethical AI / Social ValueTopics: AI and Sustainability, Human Rights, Public InnovationPublic institutions, social enterprises, researchers
Anthropic Claude Summit (TBD)Second half of 2025 (estimated)Generative AI / Ethical AIClaude API Utilization, Responsible AI DesignAI Researchers, Prompt Engineers

✅ Which summit is right for me?

Target AudienceRecommended Summit
Beginner Developers & FoundersAWS Summit, Microsoft Build, OpenAI Dev Day
AI-Based SaaS PlannersSnowflake, Google Cloud Next, Claude Summit
Designers & UX TeamsFigma Config, Notion Block by Block
Content-Based FounderSXSW, Notion, AI for Good
Data Analyst/EngineerSnowflake, Google Cloud Next, AWS

✈️ Final Tips

  • Most events available online (free or discounted with early registration)
  • Sign up for official site/email alerts to get sessions as soon as they're announced
  • Numerous reviews/summaries available on YouTube, Dev.to, Medium, etc., enabling post-event learning

The Learning Curve: The Curve of Growing Up and Really Getting It Right

When did I truly learn, and what broke me? : I am learning immersion.

1. The learning curve is not a straight line

No one is good at something from the start.
But many people 'want to be good at it right away'. That's where
the problem begins.
We mistakenly believe the process of learning something 선형적We believe that if
we understand, practice, and repeat, our skills will gradually improve.
But the actual learning curve stays flat for a long time, then suddenly spikes upward.

Most people get tired during that flat section and give up
.They conclude, "This
isn't for me." But the truth is, the curve just hasn't turned yet.

2. The Illusion of the 'Learning Wall'

Beginners most often face two emotions:
anxiety and doubt. At
some point during learning, your mind stops keeping up. You understand
the concept, but your hands won't move. You seem slower
than others, as if you've stalled.

People call this a 'wall'.
But it's not actually a wall; it's the plateau before reaching the high ground. If
you quit there, the curve simply ends as a straight line.
But if you endure that plateau,
your thoughts and actions suddenly align and break through.

3. The sensation when the learning curve breaks

A moment arrives. Code that was
incomprehensible yesterday now types itself. A presentation delivered
trembling a week ago is now delivered with
emotion.

The moment the learning curve bends into a steep ascent isn't slow.
Rather, it's abrupt.
It's not a state of 'knowing,' but one 'engraved in the body.' It's also the
moment input and output connect.
Then, without even realizing it, you solve problems of higher difficulty.

4. The crucial thing is knowing the curve exists

The cruelest aspect of the learning curve is that the moment right
before the ascent is when you most want to give up. When
the accumulated time feels ambiguous, results seem absent, and self-esteem hits rock bottom.

Yet, those who know that curve exists
endure even that plateau.
It's not about emotion; it's about awareness.
The learning curve begins not with skill, but with attitude.

"It hasn't broken yet; it's not over." Those who
remember this sentence endure.
And eventually, they climb.

5. The learning curve builds character, not just skill

Learning isn't about accumulating skills. It's about
assembling your own endurance, interpretive power, emotional control, and immersion system.
That's the true purpose of the learning curve.

Why do some people persist long-term while others quit midway when learning the same tools?
It's not about intelligence, but whether they discovered their own rhythm.
Learning is ultimately a laboratory for self-discovery.
The learning curve is not a score, but a curve of self.

6. You can't feel the learning curve unless you look back

While you're in the process, you don't really know.
You don't know if you're doing well, or if
you're truly improving; you
only have the sense that you're moving forward.

But one day, suddenly,
looking back at myself a month ago, I'm
amazed. "I did this?"
This is a privilege only those who look back can enjoy.
Learning walks forward, but the sense of growth comes from behind.

7. The curve repeats

Does it end after the first bend?
Absolutely not.
The learning curve isn't a single hill; it's a mountain range. Cross
one, and another awaits. Pass
one curve, and another flat stretch unfolds.
Then it repeats.

Now this is what matters
: "When it flattens out again, will I stop or keep going?" The masters of
the learning curve are those who know this curve repeats.
They don't fret about not bending.
They know how to 'wait' for the bend.

8. Living the Learning Curve

The learning curve isn't just a curve of learning.
It's an attitude toward life, a principle of self-expansion.

In this era where the world moves too fast,
comparison has become easy,
and
questions like "Why are you still there?" abound, those who trust the learning curve are people who walk at their own pace.

They don't learn for show.
They keep going even when they don't break.
And in the end,
they grasp the most solid form of growth.

SEO Lesson: Learn the rel=”nofollow” concept and use cases and when to use it and when not to use it

hello! Today we’re going to learn about the rel=" nofollow” attribute, which plays an important role in HTML. In this lesson, I’ll walk you through the concept of rel="nofollow“, its use cases, and when to use it and when not to use it.

1️⃣ The concept of rel="nofollow"

rel="nofollow” is an attribute used in the <a> tag in HTML that tells search engines not to follow the link. This means that links with this attribute are not crawled by search engines and do not affect the search ranking (PageRank) of the linked page.

example code:

<a href="https://example.com" rel="nofollow">Example Site</a>

the code above applies the rel="nofollow ” attribute to the text “Example Site”, telling search engines not to follow that link.

use cases for 2️⃣ rel="nofollow"

rel="nofollow” is primarily used in the following situations

1.user-generated content: Links embedded inuser-generated content such as blog comments, forum posts, etc. cannot be guaranteed to be authoritative. In such cases, rel="nofollow"is applied to prevent SEO impact due to spammy links.

example code :

<a href="https://spam-site.com" rel="nofollow">Check this out!</a>

2.ads and paid links: Links generated through ads or sponsorships can use rel="nofollow” to clarify their commercial intent so that they don’t impact search engine optimization.

example code:

<a href="https://spam-site.com" rel="nofollow">Check this out!</a>

this link is added by a sponsorship, and we apply rel="nofollow” to make sure search engines recognize it as an advertising link.

3.links to untrusted sites: Links to external sites that are not relevant to your content or are untrusted can have a negative impact on your SEO. in these cases, apply rel="nofollow"to prevent search engines from following the link.

example code:

<a href="https://untrusted-site.com" rel="nofollow">Untrusted Site</a>

this link leads to an untrusted site, so we apply rel="nofollow"to minimize the impact on SEO.

3️⃣ When to use rel="nofollow"

  • user-generated content: Links in comments or posts written by users are likely to be spam, so apply rel="nofollow” to prevent search engines from following them.
  • ads and sponsored links: Use rel="nofollow"for links added due to paid ads or sponsorships so that search engines don’t mistake them for natural recommendations.
  • links from untrusted sources: Links to unreliable or low-quality sites can have a negative impact on SEO, so apply rel="nofollow” in these cases.

4️⃣ When not to use rel="nofollow"

  • links to authoritativesources: Links to authoritative sources, such as authoritative organizations and official websites, can have a positive impact on SEO, so you should not use rel="nofollow” in these cases.
  • internal links: Internal links to other pages within your own website help your site structure and SEO, so you don’t need to apply rel="nofollow“.
  • natural editorial links: External links that are added naturally in the flow of your content, and do not need to use rel="nofollow” as long as the link is authoritative and relevant.

5️⃣ Additional link attributes

in 2019, Google introduced the rel="sponsored” and rel="ugc ” attributes to further clarify the nature of a link:

  • rel="sponsored": use for links that are paid for, such as ads or sponsorships.
  • example code :
<a href="https://sponsored-site.com" rel="sponsored">Sponsored Link</a>
  • rel="ugc": use for links generated from User Generated Content.
  • example code :
<a href="https://user-link.com" rel="ugc">User's Link</a>

by utilizing these attributes to clearly indicate the nature of the link, you can help search engines understand exactly what it is.

so, we’ve covered the concept of rel=" nofollow,” its use cases, and when to use it and when not to use it. To help you understand, let’s use an analogy: rel="nofollow” is the HTML term for when we give someone directions and advise them, “Don’t go down that road, it’s dangerous.”

The 4 types of MAKE error handler modules + their roles and usage

an error handler is a way to handle errors when they occur during the execution of a Make.com scenario. you can use error handlers to make your scenarios more reliable and flexible.

there are five types of error handlers, and you can set their behavior based on what happens. for example, if you’re autopublishing to Twitter or Blogger and an error occurs due to the API, you can use an error handler.

first, see the photo below, and in the scenario status, if an error occurs in the module, you can use add error handler to add an error handler

optionroleusage
Breakbreaks the scenario immediatelyabort execution when an error occurs in a data-integrity-critical operation.
Commitcomplete previous work, abort post-error workwhen you need to preserve the results of work before the error.
Ignoreignore the error and run the next actionwhen designing so that when an error occurs, it does not affect the workflow as a whole.
Resumeretry when an error occurswhen a transient error is likely to have occurred.
Rollbackcancel all actions and restore to original statewhen the operation is transaction-based and the entire operation needs to be canceled in the event of an error.

1. Break

  1. role
    • stops running the scenario immediately when an error occurs.
    • any tasks that were running are terminated, and no further progress is made at the point where the error occurred.
  • usage situations
    • when a scenario can no longer run due to afatal error.
    • when data integrity is critical and you need to stop execution when an error occurs
      • example: stopping execution when an error occurs in a financial transaction, database update, etc.
  • example
    • aborting a scenario when an error occurs while updating customer order data to prevent saving incorrect data.

2. Commit

  • role
    • any actions executed before the error occurs will **complete (commit) normally**.
    • no actions are executed after the error occurs, and previous actions are preserved.
  • usage situations
    • when you need to preserve the work done in the previous step.
    • when you need to ensure that successfully processed data is saved even if an error occurs
      • example: If an error occurs in a database update after sending an email, the email remains intact.
  • example
    • if an error occurs in saving to the database after sending a customer email, but the email action that has already been sent is retained.

3. Ignore

  • role
    • ignores the error and continues to run the scenario.
    • skip the action where the error occurred, and run the next action.
  • use situation
    • when you need to continue running the remaining tasks regardless of whether an error occurs.
    • when the entire workflow should not be affected if an error occurs in a non-essential task
      • example: if an error occurs in a log save task, the main process should still run.
  • example
    • keeping posts uploaded to other platforms even if an error occurs on some platforms while uploading posts to social media.

4. Resume

  • role
    • retriesthe module where the error occurred.
    • retries after waiting a certain amount of time or until the error condition is resolved, which can be repeated a set number of times.
  • usage situations
    • when an error is likely caused by a transient issue (e.g., network error, API limitations).
    • can be used in actions where retries are valid
      • example: Retry after a while when an API request fails.
  • example
    • when a single network error occurs while sending data to an external API, but retrying is likely to succeed.

you can read more about how to use resume in this article.

https://xn--6i0b29d222b.com/2025/01/24/make-%ec%98%a4%eb%a5%98%ec%b2%98%eb%a6%ac%ea%b8%b0-error-handler-resume-%ec%82%ac%ec%9a%a9%eb%b0%a9%eb%b2%95/

5. Rollback

  • role
    • undo **revert** to the state before the error occurred.
    • any actions that have already been executed will also be canceled, returning to the original state.
  • usage situations
    • when you need to ensure data integrity in transaction-based operations.
    • when previously processed actions need to be canceled in the event of an error
      • example: canceling the entire transfer if some steps in a bank transfer fail.
  • example
    • rolling back payment data already reflected in the customer’s account if an error occurs while updating object payment information.

summary cleanup

optionroleusage
Breakabort the scenario immediatelyabort execution when an error occurs in a data-integrity-critical operation.
Commitcomplete previous work, abort post-error workwhen you need to preserve the results of work before the error.
Ignoreignore the error and run the next actionwhen designing so that an error does not affect the workflow as a whole.
Resumeretry when an error occurswhen a transient error is likely to have occurred.
Rollbackcancel all actions and restore to original statewhen an operation is transaction-based and you need to cancel the entire operation in the event of an error.

additional tips

  • When setting uperror handlers, consider the importance of the task and the integrity of your data.
  • set it up to keep alog recordso that when an error occurs, you can determine the exact cause.

each of the error handling options can also be used in combination for different purposes.

1. CPANEL How-To Guide

CPANEL How-To Guide

  1. what is cPanel: A Beginner’s Guide
  2. cPanel Login and Basic Setup Guide
  3. creating a Website with cPanel
  4. how to Use cPanel’s File Manager
  5. setting Up Email Accounts with cPanel
  6. managing Databases with cPanel
  7. managing Domains and Subdomains
  8. Installing an SSL Certificate
  9. managing backups and restores
  10. hardening Security Settings in cPanel
  11. understanding Addon Domains and Park Domains in cPanel
  12. setting Up an FTP Account with cPanel
  13. setting Up Cron Jobs in cPanel
  14. managing WordPress with cPanel
  15. utilizing cPanel’s Statistics and Analytics Tools
  16. installing Apps with cPanel’s Softaculous
  17. managing DNS in cPanel
  18. checking Account Usage in cPanel
  19. how to Troubleshoot Problems in cPanel
  20. exploring cPanel’s Advanced Features
  21. How to Migrate Your IP
  22. How to Block an IP

1. what is cPanel: A Beginner’s Guide

subtopicswhy you should do itwhat you need to know for beginners
what is cPanel and what does it do?to manage your website efficiently, you need to understand the basic concepts of cPanel.cPanel is your one-stop shop for file management, database management, email settings, and more.
explore the main menus and featuresknowing the different features makes it easier to do what you need to do.check out the File Manager, Email Accounts, and Database (MySQL) menus.
why use cPanel?because it makes complex server tasks simple and just a few clicks away.it’s a simple tool that lets you install or manage your website without any server administration knowledge.

2. cPanel login and basic setup guide

detailed topicswhy you should do itwhat beginners can easily learn
how to log in to cPanelyou need access to your dashboard before you can start setting up and working.log in with your cPanel’s URL, username, and password.
set your language and time zoneyou can set your language and time zone to make your work more convenient.select your preferred language and time zone from the Change language option in thetop right corner.
understand the dashboard organizationknowing your dashboard will help you quickly find the menus you need.take a look at each section of the dashboard screen (for example, Files, Databases, Email).

3. creating WordPress with cPanel

subtopicwhy you should do itwhat beginners can easily see
installing WordPresswith cpanel, you can easily create a WordPress homepage with just one click.using cPanel’s wp toolkit , you can make WordPress a one-click installation.
upload HTML files using the file managerthis is necessary when you want to create a customized website.Openthe File Managerand hit the Upload button to upload your HTML file.
connect your domainyou need to connect your domain before your website will be visible on the internet.add a new domain in the Domains section of your cPanel.

4. how to use the File Manager in cPanel

subtopicwhy you should do itwhat you need to know for beginners
uploading and downloading filesto add or modify files to your server.Click the Upload or Download button in theFile Manager menu.
compress and decompress filesallows you to efficiently manage multiple files.select the files you want and right-click to **Compress** or **Extract** them.
understand directory structureto properly manage your files and folders, you need to understand the directory structure.remember that thepublic_html directory is the root folder of your website.

5. setting up an email account with cPanel

subtopicwhy you should do iteasy to understand for beginners
create an email accountyou can create an email with your domain name.Add a new email account from theEmail Accounts menu.
set up an email client connectionThis is required to use email conveniently on your PC or mobile.find your client settings in Connect Devicesin your cPanel.
set up email forwarding and filtersyou can automate so you don’t miss important emails.add email filters or forwarding settings from the Email Filters menu.

6. manage your database with cPanel

detailed topicwhy you should do itwhat beginners can expect to learn
Create and manage MySQL databasesyou need one to store and manage data on your website.Create a new database from theMySQL Databases menu.
manage your database with phpMyAdminyou can view or modify the details of your database.click thephpMyAdmin menu to open a database and view its tables.
back up and restore your databasethis is necessary to avoid losing important data.Select a database from theBackup menu to backup or restore it.

7. managing domains and subdomains

detailed topicwhy you need to do itwhat you need to know for beginners
adding a new domainyou’ll need this when you run multiple websites or change domains.Add a new domain from theAddon Domains menu.
create and manage subdomainsuseful for managing specific projects or sections separately.Create a new subdomain from theSubdomains menu.
set up domain redirectsrequired to automatically divert visitors to a different URL.Add redirect settings in theRedirects menu.

below are additional tables for the rest of the topics, each with a reason why you should do it and what you need to do to make it easier for beginners.

8. Installing an SSL certificate

detailed topicwhy you should do itwhat you need to know for beginners
using SSL/TLS in cPanelrequired to encrypt data on your website to keep it secure.click the SSL/TLS menu in cPanel to set up or renew your certificate.
free SSL vs. paid SSLdepending on your needs, you can choose the right option to save money or add extra security.Free SSL, like Let’s Encrypt, provides basic security, while paid SSL provides additional security and reliability.
How to test your SSL after installationyou can gain user trust by verifying that it’s installed correctly.enter your website address in a browser and check the HTTPS connection.

9. manage backups and restores

detailed topicwhy you should do itwhat you need to know for beginners
create a full account backupyou need regular backups to recover in case of data loss.download a full account backup from the Backup menu in cPanel.
restore specific files or databasesthis is useful for recovering or fixing partially corrupted data.Select specific files or databases to restore from theBackup Wizard menu.
set up an automatic backup schedulesave time and automate your backups to ensure your data is always safe.activate the automatic backup service offered by your web host or set up a schedule in cPanel.

10. strengthen your security settings in cPanel

detailed topicwhy you should do itwhat you need to know for beginners
create a strong passwordweak passwords make you an easy target for hackers.use the Password & Security menu in cPanel to create complex passwords.
Set up IP blockingyou can increase your security by proactively blocking malicious access.In theIP Blocker menu, enter specific IP addresses to block them.
enable two-step verificationadd an extra layer of account security with an additional authentication process.Open theTwo-Factor Authentication menu to enable it.

11. understanding addon domains and park domains in cPanel

detailed topicwhy you should do itwhat you need to know for beginners
setting up add-on domainsyou can manage multiple websites from one account.add it from the Addon Domains menu in cPanel and specify the root directory.
use cases for parked domainsyou need it to link multiple domains to one website.Add new domains from theAliases menu to link to the same content.
optimize domain utilizationunderstanding the different domain options can help you utilize them efficiently.here’s a quick comparison of the differences between addon and parked domains and how to use them.

12. setting up an FTP account with cPanel

subtopicwhy you should do itwhat you need to know for beginners
Create an FTP accountyou’ll need one when you upload or download large files to your server.Add a new account from theFTP Accounts menu.
recommend file transfer softwareFTP software can help you transfer files faster and more securely.Download and try free software like FileZilla.
Manage FTP permissionsyou can set different folder access permissions for different users.set directory paths and permissions on the FTP account creation screen in cPanel.

13. set up a cron job in cPanel

subtopicwhy you should do itwhat you need to know for beginners
what is a cron job?you can save time by running recurring tasks automatically.open the Cron Jobs menu in cPanel to see the job setup screen.
example cron job settingsyou can set a script to run only at a specific time.enter the job frequency (minutes, hours, days, etc.) and add the execution command.
cron job management tipsyou can avoid incorrect settings and manage your jobs efficiently.after you set up a cron job, check the logs to review the results of its execution.

14. managing WordPress with cPanel

subtopicwhy you should do itwhat you need to know for beginners
use the automatic installation toolThe fastest and easiest way to install WordPress.use the Softaculous Apps Installerin your cPanel to install with just a few clicks.
manage plugin and theme updatesregular updates are required to maintain security and performance.Check the Updates menu in your WordPress dashboard and update the necessary items.
optimize your WordPress databaseimprove your website’s speed and remove unnecessary data.run a database optimization from phpMyAdminin your cPanel.

15. how to utilize cPanel’s statistics and analytics tools

detailed topicwhy you should do itwhat beginners can easily see
check visitor statistics (AWStats, etc.)you can analyze the number of visitors to your website and their behavior to build a better strategy.Check theAWStats menu to see the number of visitors, page views, and traffic sources.
monitor bandwidth usageprevent bandwidth overages and ensure stable website operations.View traffic usage graphs in theBandwidth menu.
how to check error logsidentify website errors and resolve issues quickly.Check and fix any error messages you encounter in theError Logs menu.

16. installing apps with Softaculous in cPanel

detailed topicwhy you should do itwhat you need to know for beginners
What is Softaculous?It’s a tool that makes it easy to install apps like WordPress, Joomla, and Drupal.Open theSoftaculous Apps Installer menu to see a list of available apps.
install popular applicationsspend less time working with easy-to-use CMSs and tools.Select WordPress or Joomla and follow the installation options.
initial setup after installationset up the installed apps to get them ready to use quickly.after the app installation is complete, click the link to the admin page to complete the initial setup.

17. managing DNS in cPanel

detailed topicwhy you should do iteasy to see for beginners
Setting up A records and CNAMEsthese are required to properly associate domain names.Add or edit A records and CNAME values in theZone Editor menu.
Setting up email with MX recordsrequired to set up your domain’s email service.Check your MX recordsin Zone Editorand add your email host information.
Troubleshoot DNS settingsyou can troubleshoot connection issues caused by incorrect settings.check the DNS status of your domain name and contact your hosting provider if necessary.

18. check account usage in cPanel

detailed topicwhy you should do itwhat beginners can easily see
understanding the usage dashboardchecking your disk and bandwidth usage can help you manage your resources efficiently.In theDisk Usage menu, see how much space has been used and how much is left.
tips for optimizing disk spaceyou can avoid running out of storage space and improve performance.free up space by deleting unnecessary files or backing them up and downloading them.
prevent resource overagesexceeding your resources can cause your website to crash.check your bandwidth and memory usage regularly.

19. how to troubleshoot in cPanel

detailed topicwhy you should do itwhat you need to know for beginners
troubleshoot login issuesif you fail to log in, you need to resolve the issue quickly so you can continue working.reset your password or contact your hosting provider.
fix database connection errorsdatabase errors can cause your website to crash.check your connection informationin phpMyAdminand modify your database settings if necessary.
troubleshoot domain connectivity issuesdomain connectivity issues can prevent visitors from accessing your website.Check and correct your DNS settings and nameserver information.

20. explore advanced features in cPanel

detailed topicwhy you should do itwhat beginners can easily see
Enable SSH accessallow advanced users to perform server operations via the command line.Set the public and private keys in theSSH Access menu and enable access.
GIT version control integrationefficiently manage source code versions.Create and manage repositories from theGit Version Control menu.
advanced PHP settingsoptimize your PHP environment to meet your website requirements.Change your PHP versionin MultiPHP Manageror modify settings in the PHP INI Editor.

21. How to migrate your IP

detailed topicwhy you should do itwhat you need to know for beginners
Steps to prepare for IP migrationrequired to prevent data loss and minimize issues with your existing IP.obtain a new IP address and lower your DNS TTL values.
Update your DNSrequired to ensure proper forwarding of traffic to your new IP.update your domain’s DNS records with your new IP address.
transfer data to your new IPrequired to properly transfer your website and server settings.use the Backup & Restore menu in cPanel to back up your data and restore it to your new server.

22. How to block an IP

detailed topicwhy you should do itwhat you need to know for beginners
block specific IPsyou can block malicious traffic or security threats.open the IP Blocker menu in cPanel and add the IP addresses you want to block.
Block IP rangesyou can stop attacks from a specific range.Enter an IP range in theIP Blocker menu and save your blocking settings.
manage blocked IPsprevent incorrect blocks and correct them if necessary.Select an item from the block list in the IP Blocker menu to unblock or modify it.