신호 대 잡음

Signal-to-Noise

슬라이드에서 실제 메시지(신호)와 무관한 장식(잡음) — 그림자, 테두리, 여분의 색 — 을 줄일수록 메시지가 더 잘 읽힙니다.

다른 이름: ChartjunkSlide clutter
···
html
<div class="slide" id="slide">
  <span class="badge" id="badge"></span>
  <div class="deco d1"></div><div class="deco d2"></div><div class="deco d3"></div>
  <div class="msgwrap"><p class="msg" id="msg"></p></div>
</div>
css
.slide{position:absolute;inset:6%;border-radius:clamp(6px,1.6vmin,14px);background:var(--surface);border:3px solid var(--accent-2);overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.35);background-image:radial-gradient(var(--line) 1px,transparent 1px);background-size:14px 14px}
.slide.good{border:1px solid var(--line);box-shadow:none;background-image:none}
.badge{position:absolute;top:4%;right:4%;z-index:2;font:800 clamp(10px,2.4vmin,14px)/1 system-ui;padding:.3em .7em;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--accent-2)}
.slide.good .badge{color:var(--accent-3)}
.deco{position:absolute;opacity:.9}
.d1{width:14%;aspect-ratio:1;border-radius:50%;background:var(--accent);top:6%;left:6%}
.d2{width:10%;aspect-ratio:1;background:var(--accent-3);bottom:8%;right:10%;transform:rotate(45deg)}
.d3{width:8%;aspect-ratio:1;border-radius:50%;background:var(--accent-2);bottom:10%;left:14%}
.slide.good .deco{display:none}
.msgwrap{position:absolute;inset:0;display:grid;place-items:center;padding:10vmin}
.msg{margin:0;text-align:center;font:800 clamp(12px,3.4vmin,19px)/1.35 -apple-system,sans-serif;color:var(--fg);padding-bottom:.3em;border-bottom:6px solid var(--accent-2);text-shadow:0 2px 0 var(--accent-3),2px 0 0 var(--accent)}
.slide.good .msg{border-bottom:3px solid var(--accent);text-shadow:none}
js
const el = (id) => document.getElementById(id);
const slide = el('slide');
const L = {
  ko: { badge: ['✕ 잡음', '✓ 신호'], msg: '다음 분기 목표는 매출 20% 성장입니다' },
  en: { badge: ['✕ Noise', '✓ Signal'], msg: "Next quarter's goal is 20% revenue growth" },
};
let n = 0;
function render() {
  const good = n % 2 === 1;
  const lang = n % 4 < 2 ? 'ko' : 'en';
  const t = L[lang];
  slide.classList.toggle('good', good);
  el('badge').textContent = good ? t.badge[1] : t.badge[0];
  el('msg').textContent = t.msg;
}
render();
setInterval(() => { n++; render(); }, 2000);

에드워드 터프티가 데이터 시각화에서 쓴 "차트정크(chartjunk)" 개념은 슬라이드 전체에도 그대로 적용된다. 그림자·장식 테두리·불필요한 아이콘·서로 다른 강조색은 각각은 작아 보여도 합쳐지면 청중의 시선을 진짜 메시지에서 빼앗는다.

데모의 ✕는 같은 문장 하나에 굵은 색 테두리·그림자·배경 패턴·장식 도형 세 개를 더한다. ✓는 문장과 그 문장을 강조하는 밑줄 하나만 남기고 나머지를 전부 지운다 — 내용은 그대로인데 훨씬 크고 분명하게 읽힌다.

체크리스트: 요소를 하나씩 지워보고 "지워도 메시지가 그대로 전달되는가"를 묻는다, 그렇다면 지운다. 강조색은 슬라이드당 하나로 제한한다. 그림자·테두리는 실제 경계가 필요한 곳에만 쓴다.

언제 쓰나

템플릿의 기본 장식(그라디언트 배경, 코너 도형)을 그대로 쓰기 전에, 메시지에 도움이 되는지부터 확인하세요.