공부·프로젝트·에러 로그 관련 Notion 세팅

대상: 개발 공부·회사 프로젝트·버그/에러 기록을 Notion 하나로 정리하고 싶은 개발자
환경: Notion 기본 사용 가능, 데이터베이스(DB) 개념 이해도 있으면 좋고, 나중에 ChatGPT / API / 자동화까지 확장할 계획이 있는 사람

개발을 하다 보면 자연스럽게 이런 것들이 쌓인다.

  • 오늘 공부한 내용, 정리하고 싶은 개념들
  • 회사/개인 프로젝트 진행 상황
  • 삽질 끝에 겨우 해결한 에러/버그 기록

대부분은 메모 앱 / 카톡 / 블로그 / 종이 노트 등 여기저기 흩어져서,
막상 다시 찾으려고 하면 “어디다 적어놨더라…” 상태가 되기 쉽다.

이 글에서는 Notion 하나

  • 공부 로그
  • 프로젝트
  • 에러/문제 해결 로그

이 세 가지를 연결된 데이터베이스 구조로 설계하는 방법을 정리한다.

나중에 ChatGPT / Notion API / Make 자동화와 이어질 기본 베이스 구조라고 생각하면 된다.


1. 전체 구조 한눈에 보기 – DB 3개를 기준으로 설계

우선, Notion에서 만들 핵심 데이터베이스(DB)는 세 가지다.

  1. 공부 로그 DB – 오늘 무엇을 공부했고, 어떤 개념/문제를 다뤘는지
  2. 프로젝트 DB – 회사/개인/사이드 프로젝트 관리
  3. 에러/문제 로그 DB – 삽질 끝에 해결한 에러/버그/장애 기록

이 세 개를 Relation(관계)로 서로 연결해서:

  • 어떤 공부가 어떤 프로젝트와 연결되는지
  • 어떤 에러가 어떤 프로젝트/공부 세션에서 나왔는지

까지 한 번에 추적할 수 있는 구조를 만드는 게 목표다.

이 구조는 나중에

  • 정보처리기사 / 리눅스 자격증 공부
  • 회사 코드/샘플 코드 개발
  • ChatGPT와의 대화 로그
    와도 자연스럽게 연동할 수 있다.

2. 공부 로그 DB 설계 – “오늘 뭐 공부했는지”를 남기는 기본 단위

2-1. 공부 로그 DB에 들어갈 속성들

Notion에서 새 데이터베이스(테이블)를 만들고 이름을 예를 들어:

공부 로그

라고 하자. 추천 속성은 다음과 같다.

속성 이름타입설명
날짜Date공부한 날짜/시간 (오늘 날짜 기본값 추천)
제목Title공부 세션 제목 (예: 우분투 18.04 시리얼 포트 정리)
주제Multi-select리눅스, 시리얼, OpenCV, Notion, 자동화, 알고리즘 등
태그Multi-select시험, 회사 업무, 사이드 프로젝트, 블로그 초안 등
난이도Select★ / ★★ / ★★★ 또는 쉬움/보통/어려움 등
요약Text이번 공부의 핵심 한 줄 요약
상세 내용Text/페이지본문(노트) – 개념 정리, 코드, 스크린샷 등
프로젝트Relation“프로젝트 DB”와 연결 (옵션)
관련 에러Relation“에러 로그 DB”와 연결 (옵션)

이 중에서 필수날짜, 제목, 주제, 요약 정도이고,
나머지는 점점 쓰면서 늘려도 된다.

2-2. 공부 로그 입력 패턴 예시

예를 들어, 오늘 시리얼 포트 공부를 했다면:

  • 제목: 우분투에서 ttyUSB0 / ttyACM0 시리얼 포트 정리
  • 날짜: 오늘 날짜
  • 주제: 리눅스, 시리얼
  • 태그: 회사 업무, 블로그 초안
  • 난이도: 보통
  • 요약:
    • dmesg로 포트 이름 확인, dialout 그룹 권한, udev 규칙 기본을 정리했다.
  • 프로젝트: 샘플 코드 개발 (프로젝트 DB에서 선택)
  • 관련 에러: 나중에 연결

이렇게 작성해두면, 나중에 “내가 시리얼 관련해서 언제 무엇을 공부했지?”를
날짜/주제/프로젝트 기준으로 다시 찾기 쉬워진다.


3. 프로젝트 DB 설계 – 회사/개인/사이드 프로젝트를 한곳에서

프로젝트는 공부와 에러 로그를 묶어주는 “상위 개념”이다.

3-1. 프로젝트 DB 속성 예시

새 데이터베이스 이름:

프로젝트

추천 속성:

속성 이름타입설명
프로젝트 이름Title프로젝트/업무 이름
상태Select계획, 진행 중, 일시중단, 완료
타입Select회사, 사이드, 공부용, 블로그용 등
시작일Date시작 날짜
마감일Date마감/목표 날짜 (옵션)
설명Text프로젝트 개요
관련 공부 로그Relation“공부 로그”와 Relation (양방향)
관련 에러 로그Relation“에러 로그 DB”와 Relation (양방향)

이렇게 해두면:

  • 특정 프로젝트를 클릭했을 때
    • 그 프로젝트와 관련된 공부 기록,
    • 그 프로젝트에서 발생했던 에러/버그 기록
      를 아래 Relation 뷰에서 바로 볼 수 있다.

예시 프로젝트:

  • 우분투 18.04 샘플 코드 정리
  • 시리얼 + 카메라 통합 샘플
  • Notion 자동화 시스템
  • 정보처리기사 실기 준비

4. 에러/문제 로그 DB 설계 – “삽질 비용 줄이는 핵심 DB”

개발자로서 제일 아까운 건 같은 에러를 두 번 해결할 때다.

에러/버그/장애는 개별 DB로 분리해두는 걸 강력 추천한다.

4-1. 에러 로그 DB 속성 예시

데이터베이스 이름:

에러 / 문제 로그

추천 속성:

속성 이름타입설명
제목Title에러/문제 한 줄 설명 (예: permission denied on /dev/ttyUSB0)
발생 날짜Date발생 날짜 (대략으로 적어도 됨)
시스템/환경Multi-select우분투 18.04, 윈도우, WSL, Docker, Jetson 등
심각도Select낮음/보통/높음/치명적
상태Select미해결, 해결, 재발
원인 요약Text원인 한 줄 요약
해결 방법 요약Text해결 방법 한 줄 요약
상세 내용Text/페이지로그, 스크린샷, 시도해본 것들, 링크 등
관련 프로젝트Relation프로젝트 DB와 Relation
관련 공부 로그Relation공부 로그 DB와 Relation

4-2. 에러 로그 작성 예시

예를 들어 A3에서 다뤘던 에러:

  • 제목: /dev/ttyUSB0 permission denied 에러
  • 발생 날짜: 오늘 날짜
  • 시스템/환경: 우분투 18.04, USB-시리얼
  • 심각도: 보통
  • 상태: 해결
  • 원인 요약: 사용자가 dialout 그룹에 속해 있지 않아서
  • 해결 방법 요약: sudo usermod -aG dialout $USER 후 재로그인
  • 관련 프로젝트: 우분투 18.04 샘플 코드 정리
  • 관련 공부 로그: 우분투에서 시리얼 포트 확인 및 권한 설정 정리 (공부 로그에서 선택)

이렇게 한 번만 제대로 적어놓으면:

  • 나중에 같은 에러가 나도 “아 그때 뭐였지?” → 검색 → 바로 해결
  • 블로그 글로 풀어서 쓸 때에도 재활용이 쉬움
  • 시험/면접 준비할 때 “실제 장애 경험” 이야기로도 활용 가능

5. 세 DB를 Relation으로 연결하는 방법

이제 핵심은 세 DB를 어떻게 연결할지다.

5-1. 공부 로그 ↔ 프로젝트

  • 공부 로그 DB에 프로젝트 타입 Relation 속성을 만든다.
  • 대상 DB로 프로젝트를 선택.
  • 이제 공부 로그를 작성할 때, 해당 공부가 어느 프로젝트와 관련 있는지 골라 넣는다.

반대로 프로젝트 DB에서는:

  • 관련 공부 로그 Relation 속성이 자동으로 생겨서
  • 프로젝트 페이지 아래쪽에 “이 프로젝트와 연결된 공부 로그” 목록이 보이게 된다.

5-2. 에러 로그 ↔ 프로젝트

비슷하게:

  • 에러 / 문제 로그 DB에 관련 프로젝트 Relation 속성을 만든다.
  • 대상 DB로 프로젝트를 선택.

이렇게 하면:

  • 프로젝트 페이지에서 “이 프로젝트에서 어떤 에러들이 있었는지”를 한눈에 볼 수 있다.

5-3. 공부 로그 ↔ 에러 로그

마지막으로:

  • 공부 로그 DB에 관련 에러 Relation 속성을 만들고
  • 대상 DB로 에러 / 문제 로그 선택

혹은 반대로:

  • 에러 / 문제 로그 DB에 관련 공부 로그 Relation을 만들고
  • 대상 DB로 공부 로그 선택

둘 중 하나만 만들면 반대편에도 자동으로 생성되므로,
어느 쪽에서 시작해도 괜찮다.

이 구조를 잘 써먹으면 예를 들어:

“이 에러는 어떤 공부/프로젝트 맥락에서 나왔었지?”
“이 프로젝트를 하면서 어떤 에러들을 겪었지?”
“최근 한 달 동안 ‘우분투 18.04’ 관련 에러는 뭐 있었지?”

같은 질문에 바로 답할 수 있다.


6. Notion 뷰(View)를 활용해서 “마실 수 있는 화면” 만들기

DB 구조만 있어서는 실사용이 불편하니까,
뷰(View)를 잘 만들어두는 게 중요하다.

6-1. 공부 로그 뷰 예시

  1. 오늘 공부 뷰
    • 필터: 날짜 = 오늘
    • 정렬: 날짜 내림차순
    • 목적: “오늘 뭐 했는지 빠르게 기록/확인”
  2. 이번 주 공부 뷰
    • 필터: 날짜가 이번 주 범위
    • 그룹: 주제 기준 그룹핑 (리눅스, Notion, 알고리즘 등)
  3. 블로그 초안 후보 뷰
    • 필터: 태그블로그 초안 포함
    • 목적: “어떤 공부 기록을 블로그 글로 뽑을지” 한 번에 보기

6-2. 에러 로그 뷰 예시

  1. 최근 30일 에러
    • 필터: 발생 날짜가 최근 30일
    • 정렬: 발생 날짜 내림차순
  2. 미해결 에러
    • 필터: 상태 = 미해결
  3. 우분투 18.04 전용 에러
    • 필터: 시스템/환경우분투 18.04 포함

이렇게 해두면, 진짜 문제가 생겼을 때
에러 로그 DB가 “살아있는 도감” 역할을 하게 된다.


7. 앞으로 ChatGPT / 자동화와 어떻게 연결할지

이 구조는 나중에:

  • ChatGPT와의 대화 결과를 정리해서 공부 로그에 넣거나
  • 코드/에러 질문에 대한 답변을 에러 로그에 붙여넣고
  • Notion API / Make를 이용해서 자동으로 페이지를 생성하는 기반이 된다.

예를 들어:

  • ChatGPT에게 “오늘 공부 요약”을 받아서
    • 공부 로그 DB에 자동으로 한 줄 요약 + 태그까지 기록
  • 특정 에러를 ChatGPT에게 설명해서
    • 해결 방법 요약을 얻은 뒤 에러 로그 DB에 붙여넣기
  • 시험 준비(정보처리기사, 리눅스마스터) 문제 풀이 기록을
    • 공부 로그 DB + 에러 로그 DB로 구조화

8. 정리 – 개발자용 Notion 기본 구조 완성

지금까지 설계한 구조를 한 줄씩 정리하면:

  1. 공부 로그 DB – 날짜/주제/요약 기준으로 공부 내역을 관리
  2. 프로젝트 DB – 회사/개인/시험/블로그 프로젝트를 한 곳에서 관리
  3. 에러/문제 로그 DB – 에러/버그/장애를 따로 모아서 재사용 가능한 지식으로 만들기
  4. 세 DB를 Relation으로 연결해서
    • 공부 ↔ 프로젝트
    • 에러 ↔ 프로젝트
    • 공부 ↔ 에러
      를 이어준다.
  5. Notion 뷰(View)를 활용해서
    • 오늘 공부, 이번 주 공부, 미해결 에러 등
      자주 보는 화면을 따로 만든다.

이 구조만 잘 만들어놓고 쓰기 시작해도,
이미 “개발자용 지식/기록 시스템”의 뼈대는 갖춰진 거나 다름 없다.

댓글 남기기