Techlist.io - 한국 테크 블로그 큐레이터

figma3분 읽기큐레이션 요약

AI가 자동화할 수

AI가 프로토타입과 콘텐츠 제작을 빠르게 만들어내는 시대일수록, 좋은 결과와 훌륭한 결과를 가르는 요소는 인간의 ‘공예적 완성도’다. 호기심, 직관, 취향, 의도 같은 능력은 AI가 자동화하기 어렵고, AI의 산출물을 실제 사용자와 맥락에 맞게 조정하는 데 필수적이다. 따라서 AI는 아이디어 탐색과 반복을 가속하는 도구로 활용하되, 최종 방향과 품질 판단은 사람이 주도해야 한다. ## 호기심: 문제를 원점에서 다시 보기 - 호기심은 정해진 경로를 따르기보다 “왜 그런가?”, “만약 다르게 한다면?”을 질문하는 태도다. - Figma Make, Claude, ChatGPT 같은 도구를 활용하면 코딩 없이 프로토타입이나 캠페인 시안을 여러 방향으로 빠르게 탐색할 수 있다. - AI는 탐색 속도와 경우의 수를 늘려주지만, 다음과 같은 판단은 스스로 내리기 어렵다. - 기존 범위를 벗어나 새로운 가능성을 시험할지 여부 - 문제의 범위 자체를 다시 정의해야 하는지 여부 - 우연히 떠오른 아이디어나 직감이 더 깊이 탐구할 가치가 있는지 여부 - 초기에 폭넓게 탐색하면 이후 선택과 개선에 대한 확신이 커지고, 재작업과 팀 내 논의를 줄일 수 있다. - Figma 디자이너 Natasha Tenggoro는 Figma Make로 Figma Buzz의 동영상 기능을 여러 방식으로 프로토타이핑했다. - 다양한 방향과 예외 상황을 조기에 테스트했다. - 기능의 범위와 구현 가능성을 엔지니어링 팀이 더 명확히 이해할 수 있었다. - 개발 단계에서 발생할 수 있는 비용 큰 왕복 논의를 줄였다. ## 호기심의 실제 적용: 아이콘 체계 전체를 다시 설계하기 - Figma가 Figma Make, Figma Buzz, Figma Sites, Figma Draw를 출시하면서 Tim Van Damme은 네 제품의 아이콘을 새로 만들어야 했다. - 처음에는 새 제품별 아이콘 네 개를 만드는 작업처럼 보였지만, 작업 과정에서 기존 아이콘과 새 아이콘의 전체적인 통일성이 문제로 드러났다. - 그는 개별 아이콘만 설계하는 대신 Figma 아이콘 체계 전체를 재설계하는 방향으로 범위를 확장했다. - 이 결정으로 프로젝트 기간은 몇 주 늘었지만, 수백 가지 변형을 검토하며 다음 목표를 달성했다. - 각 아이콘이 개별 제품을 명확히 나타냄 - 전체 아이콘군은 일관된 시각 언어를 공유함 - 큰 광고 형식에서도 잘 확장됨 - Figma만의 정체성을 유지함 - 이는 주어진 과업을 빠르게 완료하는 것보다, 문제를 더 근본적인 수준에서 다시 정의하는 호기심이 더 나은 결과를 만들 수 있음을 보여준다. ## 직관: 기술적으로 작동하는 것 이상을 판단하기 - AI는 제품을 빠르게 출시 가능한 상태로 만들 수 있지만, 무엇이 고객에게 가장 잘 전달되고 공감될지는 스스로 확정하기 어렵다. - 사람은 프로토타입이 기능적으로는 정상이어도 다음과 같은 문제를 감지할 수 있다. - 사용자가 혼란을 느낄 수 있는 상호작용 - 정보가 모두 들어갔지만 지나치게 답답한 레이아웃 - 콘텐츠가 맞더라도 충분히 편안하거나 매력적으로 느껴지지 않는 경험 - CVS Health의 Eliel Johnson은 디자인을 직함이 아니라 행동으로 보며, “이것이 사용자에게 좋은 느낌을 주는가?”를 계속 질문해야 한다고 말한다. - 직관은 명확한 데이터나 규칙으로 즉시 설명되지 않더라도, 사용자 경험의 어색함과 개선 가능성을 먼저 포착하는 인간의 판단 능력이다. AI를 단순히 결과물을 자동 생성하는 수단으로 사용하기보다, 다양한 아이디어를 빠르게 실험하고 검증하는 탐색 도구로 활용하는 것이 바람직하다. 최종적으로는 사람이 문제의 범위를 다시 정의하고, 사용자의 감정과 맥락을 고려하며, “작동하는가”를 넘어 “좋은 경험인가”를 판단해야 한다.

원문 읽기(새 탭에서 열림)
figma3분 읽기큐레이션 요약

여름 캠페인의 해부:

Instacart는 1990년대의 향수를 자극하는 간식과 디자인을 활용해 “Summer Like It’s 1999” 캠페인을 진행했다. 1999년 가격으로 Bagel Bites, Capri-Sun, Otter Pops 등을 판매하고, 뉴욕에서 Third Eye Blind 무료 콘서트를 열어 온라인과 오프라인을 연결했다. 캠페인의 성공 요인은 여러 팀과 파트너가 Figma를 중심으로 실시간 협업하며 일관된 디자인 시스템을 구축한 데 있었다. ## 1990년대 향수를 되살린 캠페인 - 버터플라이 클립, 초커, 헐렁한 청바지, 버킷햇 등 당시 유행을 현대적으로 재해석했다. - “단순하고 carefree했던 시절”에 대한 향수를 캠페인의 정서적 기반으로 삼았다. - 대표적인 1990년대 간식을 당시 가격으로 제공해 과거의 여름 경험을 재현했다. - 앱 아이콘과 스플래시 화면부터 TV 광고, 옥외 광고, 콘서트까지 수십 개의 접점을 하나의 캠페인으로 연결했다. ## 브랜드와 복고풍 사이의 균형 - Instacart의 자체 브랜드 정체성을 유지하면서도 1990년대 분위기를 강하게 표현하는 것이 핵심 과제였다. - 청키한 타이포그래피, 선명한 색상, 피시 아이 렌즈 사진을 주요 시각 요소로 사용했다. - 팀은 다양한 1990년대 디자인 자료를 폭넓게 탐색한 뒤, 브랜드와 캠페인을 연결하는 핵심 요소만 추려냈다. - 크리에이티브 스튜디오는 타이포그래피, 색상, 일러스트레이션, 사진, 로고와 락업 표현을 매일 논의하며 방향을 조정했다. ## 확장 가능한 디자인 툴킷 - 캠페인 툴킷에는 다음 요소가 체계적으로 정리됐다. - 기본 및 보조 색상 팔레트 - 일러스트레이션 스타일 - 타이포그래피와 문구 배치 - 제품 패키지 표현 방식 - 사진 및 질감 활용법 - 로고와 캠페인 락업 규칙 - 툴킷은 단순한 가이드 문서가 아니라 내부 팀과 외부 파트너가 계속 활용하는 ‘살아 있는 파일’로 운영됐다. - 캠페인 진행 중 새로운 요구사항이 생겨도 기존 규칙 안에서 자유롭게 변형할 수 있었다. - Venmo 파트너십 광고처럼 예상하지 못한 확장 프로젝트도 기존의 글꼴, 일러스트, 사진 지침을 활용해 빠르게 제작할 수 있었다. ## Figma를 중심으로 한 협업 방식 - 브랜드, 퍼포먼스, 커머셜 마케팅, 앱 제작팀이 Figma를 공동 작업 공간으로 사용했다. - 마케터도 파일에 직접 접근해 작업 진행 상황을 확인하고, 제작 중간에 의견을 제시할 수 있었다. - 완성물을 마지막에 전달하는 방식 대신, 작업 과정의 ‘중간 상태’를 공유하며 지속적으로 수정했다. - 다양한 팀과 외부 이해관계자가 빠르게 움직이는 캠페인에서는 개방성과 유연성이 중요하다는 점을 보여준다. - Figma는 디자인 제작 도구이자 캠페인의 일관성을 유지하는 단일 기준점 역할을 했다. ## 세밀하게 설계한 사진 브리프 - 사진 브리프는 무엇을 촬영할지뿐 아니라 어떤 방식으로 촬영할지도 구체적으로 규정했다. - 캠페인의 핵심 CPG 제품이 사진 속에서 어떻게 보여야 하는지 명확히 지정했다. - 여러 이해관계자의 검토를 거쳐야 했기 때문에 제품 노출 방식과 촬영 구도가 세밀하게 정의됐다. - 사진 위에 일러스트레이션, 타이포그래피, 질감을 추가해 모든 소재가 동일한 캠페인처럼 보이도록 설계했다. - 낮은 앵글, 피시 아이 효과, 햇살이 느껴지는 야외 공간 등을 활용해 1990년대의 과장되고 낙관적인 분위기를 표현했다. ## 실용적인 시사점 대규모 캠페인에서는 완성된 결과물을 일방적으로 전달하기보다, 모든 팀이 접근할 수 있는 공유 툴킷과 실시간 리뷰 구조를 마련하는 것이 효과적이다. 특히 복고풍처럼 강한 스타일을 활용할 때는 시각적 요소를 무작정 늘리기보다 브랜드와 연결되는 핵심 규칙을 먼저 정하고, 그 안에서 다양한 실행물을 확장하는 방식이 유용하다.

원문 읽기(새 탭에서 열림)
figma3분 읽기큐레이션 요약

회복 탄력성 있는 디자인 팀

빠르게 변하는 기술 환경과 AI의 확산 속에서 회복탄력적인 디자인 팀을 만들려면 팀의 심리적 안전과 건강을 먼저 확보해야 한다. 동시에 실험과 역할 확장을 장려하고, 디자인 완성도를 경쟁력으로 삼아 변화에 적응하면서도 높은 품질을 유지해야 한다. 글은 Figma, Twitter, 37signals에서의 경험을 바탕으로 리더가 고정된 해법보다 원칙에 기반해 팀을 운영해야 한다고 강조한다. ## 팀의 건강과 심리적 안전을 우선하기 - 스트레스, 과로, 번아웃, 발언에 대한 두려움이 있으면 구성원은 역량을 충분히 발휘하기 어렵다. - 서로 신뢰하고 공동의 목표를 공유하는 환경이 창의적인 협업의 기반이 된다. - 다양한 의견이 반영되도록 실시간 회의뿐 아니라 비동기 채널도 운영해야 한다. 그래야 회의에서 가장 목소리가 큰 사람만 의사결정을 주도하지 않는다. - 프로젝트의 초기 스케치부터 최종 디자인까지 모든 단계의 결과물을 자유롭게 공유하도록 장려한다. - 1:1 미팅, 커리어 대화, 팀 설문을 정기적으로 진행해 문제가 커지기 전에 팀의 상태를 파악한다. - 실제 가용 시간과 업무량을 고려해 과도한 약속을 피해야 한다. - 리더가 모르는 점이나 어려움을 솔직하게 드러내면 구성원도 취약함과 의견을 안전하게 공유할 수 있다. ## 실험과 역할의 유연성 장려하기 - 디자이너마다 강점과 성장 영역이 다르므로, 서로 보완적인 역량을 가진 사람들을 함께 배치하면 팀의 균형과 학습 효과가 커진다. - 리서치, 디자인, 제품, 엔지니어링의 경계가 점점 흐려지는 만큼 전통적인 직무 범위에만 머물지 않도록 해야 한다. - 디자이너가 실제 구현과 가까워지도록 AI 프로토타이핑이나 코드 실험을 장려한다. - 실제 작동하는 결과물을 빠르게 평가하면 더 나은 디자인 결정을 내릴 수 있고, 결과적으로 생산성이 높아지는 선순환이 생긴다. - 실험 결과와 학습 내용을 공유할 공간을 마련한다. Figma의 `#design-wip` 채널처럼 미완성 아이디어, 스케치, 작동하는 프로토타입도 공유할 수 있어야 한다. - 디자인 크리틱에 제품·엔지니어링 등 협업 직군을 참여시켜 새로운 관점과 포용적인 작업 방식을 만든다. - 현재 제품을 계속 출시하는 실행과 미래의 작업 방식을 탐색하는 발명을 동시에 진행해야 한다. ## 완성도를 차별화 요소로 삼기 - 경쟁이 치열한 시장에서는 유용하고 잘 실행된 제품이 사용자 충성도와 추천을 높이고 성장을 이끈다. - 특히 엔터프라이즈 소프트웨어에서는 디자인 완성도가 뒤로 밀리는 경우가 많기 때문에 세심한 품질 관리가 차별점이 될 수 있다. - 완성도 높은 결과물을 만들려면 시각적 일관성, 인터페이스의 명확성, 세부적인 사용자 경험에 주의를 기울여야 한다. - 빠른 출시와 품질 사이에는 trade-off가 발생할 수 있으며, 때로는 새 기능 추가보다 UX 개선을 우선해야 한다. - 속도를 중시하는 상황에서도 품질을 자동으로 희생하지 않도록 팀 차원의 기준과 우선순위를 명확히 해야 한다. 결국 리더는 안전하게 의견을 낼 수 있는 문화를 만들고, 실험과 직무 간 협업을 지원하며, 속도와 품질 사이의 균형을 관리해야 한다. 정기적인 팀 상태 점검과 현실적인 업무량 조정, 작게라도 지속적인 프로토타이핑이 회복탄력적인 디자인 팀을 만드는 실용적인 출발점이다.

원문 읽기(새 탭에서 열림)
slack4분 읽기큐레이션 요약

슬랙의 이상 이벤트 대응 체

Slack은 탐지에 그치지 않고 의심스러운 사용자 행동이 발생한 즉시 세션을 종료하는 **Anomaly Event Response(AER)**를 구축했다. AER는 실시간 분석과 자동 대응을 결합해 침해 탐지부터 대응까지의 시간을 며칠 또는 몇 시간에서 수분으로 줄이고, 데이터 유출이나 공격 체인의 진행을 조기에 차단한다. Enterprise Grid 고객은 별도 보안 도구나 인력 없이 기본 기능으로 사용할 수 있으며, 필요하면 기존 보안 시스템과 함께 운영할 수 있다. ## 탐지와 대응 사이의 공백 - Slack은 매주 수천만 명이 사용하고 매일 수십억 건의 상호작용이 발생하는 협업 플랫폼이다. - Enterprise 고객에게는 사용자의 플랫폼 활동을 기록하는 감사 로그를 제공한다. - `anomaly` 감사 로그는 다음과 같은 비정상 행위를 고급 분석으로 식별한다. - 비정상적인 로그인 - 악성 코드 업로드 - 예상치 못한 데이터 전송 - 기타 워크스페이스별 이상 활동 - 기존 감사 로그는 위협을 알려주는 조기 경보 역할을 하지만, 실제 대응을 위해서는 보안 담당자의 검토나 제3자 보안 솔루션 연동이 필요하다. - AER는 이 탐지-대응 간극을 자동화해, 고객이 이상 징후를 확인하기 전에 관련 사용자 세션을 종료한다. ## AER의 설계 철학 AER는 모든 유형의 위협을 다루기보다 여러 조직에서 공통적으로 발생할 가능성이 높은 이상 행위에 우선순위를 두었다. - Tor 출구 노드를 통한 Slack 접속 - 데이터 유출을 암시할 수 있는 과도한 다운로드 - Slack 기본 기능이 아닌 자동화 도구를 이용한 데이터 스크래핑 - 세션 지문(session fingerprint) 불일치 - 비정상적인 API 호출량 또는 호출 패턴 - 표준적이지 않거나 가상 환경을 나타내는 예상 밖의 사용자 에이전트 조직마다 정상적인 사용 패턴과 위험 수준이 다르므로, 고객은 탐지 유형별로 대응 방식을 선택할 수 있다. - 특정 이상 이벤트가 발생하면 사용자 세션을 종료 - 이벤트는 기록하되 자동 대응은 하지 않음 - 알림 수신 여부와 수신 대상 설정 - 조직 기본 소유자 - 보안 관리자 - 이메일 및 Slack 알림 설정은 **Tools and Settings → Organization settings → Security → Security Settings → Anomaly Event Response Settings**에서 변경한다. ## AER의 전체 아키텍처 AER는 실시간 탐지, 비동기 작업 처리, 알림 전달을 분리한 다중 계층 구조로 설계됐다. - **탐지 엔진** - Slack에서 발생하는 하루 수십억 건의 이벤트를 감시한다. - 규칙 기반 휴리스틱과 동적 임계값을 함께 사용한다. - **의사결정 프레임워크** - 의심스러운 행동이 감지될 때 생성된 감사 이벤트의 페이로드를 검증한다. - 해당 이벤트가 지원 대상 이상 유형인지, 고객 설정상 자동 대응해야 하는지 판단한다. - **응답 오케스트레이터** - 조건을 충족한 사용자 세션을 종료한다. - 대응 결과를 감사 로그에 남긴다. - 고객이 설정한 경우 조직 담당자에게 알림을 보낸다. 전체 흐름은 다음과 같다. 1. 의심스러운 사용자 활동 발생 2. 활동 분석 3. 이상 이벤트 생성 4. AER 컨트롤러가 지원 대상 여부와 대응 조건 확인 5. 조건 충족 시 사용자 세션 종료 6. 항상 감사 로그 기록 7. 설정된 경우 고객에게 알림 ## 조직별 기준을 적용하는 탐지 엔진 - 동일한 활동이라도 조직의 업무 특성에 따라 정상 또는 비정상일 수 있다. - 예를 들어 한 조직에서 대량 다운로드가 일상적이라면, 고정된 전역 기준을 적용할 경우 오탐이 많이 발생할 수 있다. - AER는 각 Enterprise 조직의 과거 사용 데이터를 기반으로 임계값을 계산한다. - 조직별 기준선을 사용하면 다음 효과가 있다. - 오탐 감소 - 탐지 민감도 조정 - 탐지 효과의 지속적인 검증과 개선 - 즉, 단순히 “특정 횟수 이상이면 공격”으로 판단하지 않고, 각 조직의 평소 사용 패턴에서 벗어났는지를 기준으로 판단한다. ## 자동 세션 종료를 통한 즉각 대응 - 이상 행위가 높은 신뢰도로 식별되면 관련 사용자 세션을 자동으로 종료한다. - 이를 통해 공격자가 계정을 계속 사용하거나 데이터를 추가로 추출하는 시간을 줄인다. - 기존의 사후 대응처럼 피해 규모를 조사한 뒤 조치하는 대신, 공격 체인이 완전히 실행되기 전에 개입한다. - 자동 대응 결과는 감사 로그에 남아 사후 조사와 보안 검토에 활용된다. - 고객은 조직의 위험 허용 수준에 따라 특정 탐지 항목만 세션 종료 대상으로 지정할 수 있다. ## 고객 보안 체계와의 역할 분담 - Slack은 플랫폼 자체의 탐지와 기본 대응 기능을 제공한다. - 고객은 감사 로그와 AER 설정을 활용해 조직별 보안 정책을 구성할 수 있다. - 보안 역량과 인력이 제한적인 고객은 AER를 별도 연동 없이 사용할 수 있다. - 고급 보안 조직은 AER를 SIEM, SOAR 또는 자체 탐지 체계와 결합해 더 세밀한 대응 정책을 추가할 수 있다. - 이는 Slack과 고객이 함께 보안을 책임지는 **공동 책임(shared responsibility)** 모델에 해당한다. 조직별 정상 패턴을 반영할 수 있는 자동 탐지와 즉시 세션 종료를 결합한 AER는, 감사 로그를 사람이 확인한 뒤 대응하는 방식보다 빠르고 실용적이다. 다만 자동 종료는 업무 중단을 일으킬 수 있으므로 처음에는 이벤트를 기록만 하며 오탐을 검증한 뒤, 위험도가 높은 탐지부터 단계적으로 자동 대응을 활성화하는 것이 바람직하다.

원문 읽기(새 탭에서 열림)
figma3분 읽기큐레이션 요약

코프코어는 왜 갑자기

소프트웨어 기업의 로고와 굿즈가 더 이상 평범한 판촉물이 아니라 스트리트웨어와 문화적 상징으로 소비되고 있다. 이를 ‘코프코어(corpcore)’라 부르며, 빈티지 기술 기업에 대한 향수와 현대 브랜드의 한정판·패션화 전략이 이러한 흐름을 이끌고 있다. 결국 기업 굿즈는 소속감과 성취를 드러내는 동시에, 진지함과 아이러니를 오가는 자기표현 수단이 되었다. ## 코프코어의 부상 - 소프트웨어 로고가 들어간 티셔츠, 토트백, 모자, 물병 등이 밴드 티셔츠나 스포츠 유니폼처럼 착용되고 있다. - 과거에는 기업 굿즈가 촌스럽고 실용적인 판촉물로 여겨졌지만, 최근에는 패션 아이템으로 재평가된다. - 빈티지 Apple 티셔츠는 디자인이 단순함에도 Depop과 Grailed 같은 리셀 플랫폼에서 수백 달러에 거래된다. - 1997년에 출간된 Apple 티셔츠 역사서 초판도 최대 850달러에 판매될 정도로 수집 가치가 형성됐다. ## 컨퍼런스 굿즈에서 한정판 스트리트웨어로 - Figma의 연례 컨퍼런스 Config에서는 대형 설치물과 체험형 공간뿐 아니라 Season 4 컬렉션 팝업 스토어가 큰 인기를 끌었다. - 매장 앞에 긴 줄이 생겼고, Otto 캐릭터 봉제인형과 의류를 구매하려는 참석자가 몰렸다. - Figma Brand Studio는 Garrett Elizabeth Office와 8개월 동안 컬렉션을 개발했다. - 한정된 수량, 독창적인 디자인, 브랜드 팬덤이 결합하면서 기업 굿즈가 Supreme의 드롭처럼 소비됐다. - 이는 브랜드 충성도가 단순한 제품 선호를 넘어 패션과 소장 문화로 확장된 사례다. ## 초기 기술 문화에 대한 향수 - 빈티지 굿즈의 매력은 초기 웹과 개인용 컴퓨터 시대의 유물을 소유한다는 데 있다. - 현재 기술 업계 종사자 중 상당수는 어린 시절 Microsoft나 Apple을 통해 기술을 처음 접했기 때문에 해당 브랜드에 개인적인 애정과 존경을 갖고 있다. - 과거의 기술 기업은 기존 질서에 도전하는 젊은 코더와 혁신의 상징으로 인식됐다. - 빈티지 Apple 티셔츠는 단순한 로고 상품이 아니라 “성공한 집단에 속한다”거나 “성취를 지지한다”는 메시지를 전달하는 표식으로 기능한다. - 다만 오늘날 착용자는 그 시대를 직접 경험하기보다, 이미 지나간 성공 신화를 아이러니한 거리감과 함께 소비한다. ## 진지함과 아이러니의 결합 - 현대 코프코어에는 브랜드에 대한 진정한 애정뿐 아니라 과장과 부조리를 즐기는 태도도 포함된다. - Cash App은 2023년 디자이너 Marshall Columbia와 협업해 Julia Fox가 착용한 클럽 키드 스타일의 대담한 의류를 선보였다. - 기술 기업을 넘어 Dunkin’ Donuts, Lockheed Martin 같은 브랜드도 한정판 의류와 패션 컬렉션에 활용되고 있다. - 기업 굿즈 디자인의 핵심 과제는 브랜드를 진지하게 표현하면서도 지나치게 홍보물처럼 보이지 않게 만드는 것이다. - 성공적인 코프코어 상품은 회사 로고를 그대로 노출하는 대신, 패션성과 유머·아이러니를 더해 착용자가 스스로 선택한 문화적 표현처럼 보이게 한다. ## 실용적인 시사점 기업 굿즈를 만들 때는 단순히 로고를 크게 넣기보다 브랜드의 역사, 팬덤, 문화적 맥락을 디자인에 반영하는 것이 중요하다. 한정성, 협업, 독창적인 세계관을 결합하면 굿즈는 광고물을 넘어 사람들이 자발적으로 소장하고 착용하는 브랜드 경험이 될 수 있다.

원문 읽기(새 탭에서 열림)
line원문

코드 품질 개선 기법 19편: 차일드 록 (새 탭에서 열림)

상속 구조에서 자식 클래스가 부모 클래스의 함수를 오버라이딩할 때 발생할 수 있는 결함을 방지하기 위해, 오버라이딩 가능한 범위를 최대한 제한해야 합니다. 부모 클래스의 공통 로직과 자식 클래스의 확장 로직을 분리하지 않으면 `super` 호출 누락이나 책임 범위의 혼선과 같은 버그가 발생하기 쉽습니다. 따라서 부모 클래스에서 전체적인 흐름을 제어하고 자식 클래스는 특정 지점의 로직만 구현하도록 설계하는 '차일드 록(child lock)' 기법이 필요합니다. **기존 오버라이딩 방식의 문제점** * **super 호출 누락의 위험:** 자식 클래스에서 부모의 기능을 실행하기 위해 `super.bind()`를 명시적으로 호출해야 하는 구조는 실수를 유발하기 쉽습니다. 호출을 잊더라도 컴파일 에러가 발생하지 않아 헤더나 푸터가 업데이트되지 않는 등의 버그가 방치될 수 있습니다. * **구현 강제성 부족:** 오버라이딩이 필수적인 상황임에도 불구하고 주석으로만 안내되어 있다면, 개발자가 실수로 구현을 누락할 가능성이 큽니다. * **책임 범위의 모호함:** 하나의 함수(`bind`)가 공통 로직과 개별 로직을 모두 포함하고 있으면 오버라이딩의 책임 범위를 오해하기 쉽고, 결과적으로 자식 클래스에 부적절한 코드가 포함될 수 있습니다. **차일드 록을 통한 구조 개선** * **공통 흐름의 고정:** 부모 클래스의 메인 함수(예: `bind`)에서 `open` 키워드를 제거하여 자식 클래스가 전체 흐름을 수정할 수 없도록 '록'을 겁니다. * **추상 메서드 분리:** 자식 클래스마다 달라져야 하는 로직만 별도의 `abstract` 메서드(예: `updateMessageList`)로 추출합니다. * **템플릿 메서드 패턴 적용:** 부모 클래스의 `bind` 함수에서 공통 로직(헤더/푸터 업데이트)을 실행한 후, 자식 클래스가 구현한 추상 메서드를 호출하는 방식으로 설계합니다. 이를 통해 자식 클래스는 부모의 로직을 신경 쓰지 않고 자신의 역할에만 집중할 수 있습니다. **견고한 상속 설계를 위한 가이드라인** * **super 호출 지양:** 라이프사이클 관리나 플랫폼 API의 제약이 있는 특수한 경우를 제외하고는, 자식 클래스에서 `super`를 호출해야만 기능이 완성되는 구조를 피해야 합니다. * **제어 흐름의 중앙 집중화:** 자식 클래스들이 공통으로 사용하는 함수의 실행 순서나 흐름은 반드시 부모 클래스에서 정의하고 관리해야 합니다. * **캡슐화 강화:** C++의 `private virtual` 기법처럼, 부모 클래스에서만 호출 가능하면서 자식 클래스에서 동작을 재정의할 수 있는 구조를 활용하여 오버라이딩 범위를 엄격하게 제한하는 것이 좋습니다. 상속을 설계할 때는 자식 클래스에게 과도한 자유를 주기보다, 필요한 부분만 안전하게 확장할 수 있도록 제약 장치를 마련하는 것이 시스템의 안정성을 높이는 핵심입니다. 이는 코드 리뷰 과정에서 발견하기 어려운 논리적 오류를 컴파일 단계나 구조적 제약으로 사전에 차단하는 효과를 줍니다.

figma원문

IDC 조사: 전 세계 (새 탭에서 열림)

글로벌 시장 분석 기관인 IDC의 최신 연구에 따르면, 소프트웨어 디자인 및 개발에 참여하는 인력은 2025년 107만 명에서 2029년 144만 명으로 약 30% 이상 급증할 것으로 전망됩니다. 이는 디자인이 기업의 핵심적인 경쟁 우위 요소로 자리 잡고 있음을 시사하며, 특히 사용자 경험(UX) 중심의 솔루션에 대한 수요가 폭발적으로 늘어나고 있음을 보여줍니다. 생성형 AI의 발전은 이러한 흐름을 가속화하여 더 정교하고 시각적으로 뛰어난 디지털 제품의 생산을 촉진할 것으로 보입니다. **소프트웨어 디자인 인력의 양적 팽창** - IDC는 디지털 제품 및 인터페이스 디자인에 참여하는 지식 근로자와 개발자의 수가 2025년 1억 7백만 명에서 2029년 1억 4천 4백만 명으로 증가할 것으로 예측했습니다. - 이러한 성장은 전 산업군과 기업 규모를 막론하고 소프트웨어 디자인의 중요성이 비즈니스 전략의 핵심으로 부상했음을 의미합니다. - 디자인 중심의 문제 해결을 위한 전문 인력에 대한 수요는 향후 몇 년간 지속적으로 강화될 것입니다. **UX 디자인 직무의 독보적인 성장세** - UX 디자인 전문가 집단은 2025년부터 2029년까지 연평균 성장률(CAGR) 7.6%를 기록할 것으로 보입니다. - 이는 다른 지식 근로자 하위 범주의 성장 속도를 앞지르는 수치로, 복잡한 기술을 사용자 친화적으로 풀어내는 디자인 집약적 솔루션의 중요성을 방증합니다. - 기업들은 단순한 기능 구현을 넘어, 차별화된 인터페이스와 사용자 경험을 제공하기 위해 UX 인력을 공격적으로 확충할 전망입니다. **생성형 AI가 가져올 개발 속도와 품질의 변화** - 생성형 AI는 소프트웨어 개발의 속도와 물량을 비약적으로 증가시켜 사용자에게 더 넓은 선택지를 제공하는 촉매제 역할을 할 것입니다. - 제품 내 AI 기능 통합이 보편화됨에 따라, 디자이너와 개발자는 고도로 사용 가능하고 시각적으로 매력적인 AI 인터페이스를 구현해야 한다는 도전에 직면하게 됩니다. - 결과적으로 AI는 디자인 과정을 보조하는 동시에, 더 높은 수준의 디자인 표준을 유지해야 하는 압박으로 작용하여 숙련된 디자인 인력의 가치를 높일 것입니다. 디자인은 이제 단순한 미적 요소를 넘어 제품의 성패를 가르는 전략적 자산이 되었습니다. 기업들은 증가하는 디자인 인력 수요에 대비하고, 특히 생성형 AI를 디자인 프로세스에 효과적으로 통합하여 고도화된 사용자 경험을 신속하게 제공할 수 있는 역량을 갖추어야 합니다. 이러한 변화의 흐름 속에서 디자인과 개발의 경계를 허물고 협업 효율을 극대화하는 것이 미래 소프트웨어 시장의 핵심 경쟁력이 될 것입니다.

discord4분 읽기큐레이션 요약

모든 디스코드

Discord는 음성·영상 통화의 표준을 DAVE 기반 종단간 암호화(E2EE)로 전환하며, 브라우저·콘솔·Social SDK까지 지원 범위를 확대한다. 2026년 3월 1일부터는 DAVE를 지원하지 않는 클라이언트와 앱이 Discord 통화에 참여할 수 없다. 브라우저 환경에서는 WebRTC Encoded Transform API, Web Worker, WebAssembly를 조합해 보안성과 성능을 확보했다. ## DAVE의 전 플랫폼 확대 - DAVE는 Discord의 음성·영상 통화에 E2EE를 제공하는 프로토콜이다. - 이미 매일 수천만 건의 통화에 적용되고 있으며, 이번 작업으로 다음 플랫폼까지 지원한다. - 웹 브라우저 - 콘솔 - Discord Social SDK - 2026년 3월 1일부터 비-DAVE 클라이언트는 음성 채널과 영상 통화에 참여할 수 없다. - 이는 기존 실험적 도입을 종료하고 DAVE를 Discord 통화의 기본 보안 표준으로 삼는 단계다. ## WebRTC Encoded Transform API 활용 - 브라우저에서는 WebRTC 미디어 파이프라인 내부의 인코딩 전후 지점에서 오디오·영상 프레임을 암호화한다. - Encoded Transform API를 사용하면 브라우저의 코덱과 WebRTC 기능을 유지하면서 DAVE 암호화를 삽입할 수 있다. - Discord는 H.265, AV1 등 최신 코덱의 하드웨어 지원도 활용할 수 있도록 설계했다. - 더 높은 화질 - 더 효율적인 대역폭 사용 - 플랫폼별 코덱 지원 유지 ## Firefox에서 발견한 교착 상태 문제 - 초기 테스트에서는 Firefox에서도 DAVE가 정상 작동했지만, 실제 Discord 통화에서는 암호화용 Web Worker가 프레임을 받지 못했다. - 원인은 Firefox의 `FrameTransformerProxy`가 비디오 데이터가 너무 일찍 전달될 때 교착 상태에 빠지는 엣지 케이스였다. - 지연 처리를 위해 저장된 비디오 데이터가 뮤텍스를 사용했으며, 변환 작업이 같은 뮤텍스에 재진입하면서 재귀적 교착이 발생했다. - Discord 팀은 Firefox를 직접 빌드해 브라우저 수준에서 문제를 추적하고 Mozilla에 패치를 제출했다. - 수정 사항은 Firefox 142.0에 포함되며, DAVE를 사용하려면 최소 Firefox 142.0이 필요하다. ## Web Worker 기반 암호화 구조 - 각 Discord 연결은 미디어 암호화와 복호화를 담당하는 전용 Web Worker를 사용한다. - 일반 통화에서는 다음 미디어를 처리한다. - 통화 오디오 - 카메라 영상 - 화면 공유나 게임 스트림은 오디오와 영상별로 별도의 Worker가 처리한다. - 각 WebRTC 스트림에는 고유한 SSRC가 있으며, DAVE는 SSRC를 기준으로 프레임에 사용할 대칭키를 식별한다. - Worker는 다음과 같은 최소한의 상태만 유지한다. - 송수신 오디오·영상 정보 - SSRC와 사용자 ID의 매핑 - 각 사용자에 대한 암호화 키 ## 메인 스레드와 암호화 Worker의 역할 분리 - 메인 JavaScript 스레드는 WebRTC 연결과 참여자, 미디어 트랙을 관리한다. - 사용자 입장·퇴장 시 필요한 MLS(Message Layer Security) 협상도 메인 스레드에서 수행한다. - MLS 그룹 변경을 Worker에서 처리하지 않기 때문에, Worker가 프레임 암호화를 끝낼 때까지 메인 스레드가 대기할 필요가 없다. - MLS 상태가 바뀌면 메인 스레드가 Worker에 비동기 메시지를 보내 암호화 상태를 갱신한다. - 이 구조는 멤버 변경 중에도 미디어 암호화를 계속 수행해 통화 지연을 줄인다. ## 검증된 C++ 구현의 WebAssembly 재사용 - Discord는 데스크톱과 모바일에서 이미 대규모로 검증된 DAVE C++ 코드베이스를 WebAssembly로 컴파일했다. - 동일한 암호화 구현을 여러 플랫폼에서 재사용하면 플랫폼별 재구현으로 인한 보안 취약점과 동작 차이를 줄일 수 있다. - WebRTC 패킷에는 라우팅과 패킷 처리를 위해 일부 메타데이터가 평문으로 남아 있어야 한다. - 암호화된 데이터가 WebRTC 패킷화기, SFU, 역패킷화기를 거치는 동안 변경되면 복호화가 실패한다. - 따라서 프레임을 바이트 단위로 파싱하고 필요한 부분만 선택적으로 암호화해야 한다. - 이 작업은 JavaScript로 직접 구현하기에는 복잡하고 오류 가능성이 높지만, WebAssembly를 사용하면 네이티브에 가까운 성능으로 처리할 수 있다. ## WebAssembly와 SubtleCrypto의 성능 절충 - WebAssembly는 프레임 파싱과 선택적 암호화 로직을 효율적으로 처리한다. - 반면 암호화 연산 자체는 브라우저의 네이티브 API인 `SubtleCrypto`보다 약간 느릴 수 있다. - Discord의 벤치마크는 두 방식의 성능 차이가 단순하지 않으며, 실제 병목이 암호화 연산뿐 아니라 프레임 처리와 데이터 이동에도 있음을 시사한다. - 최종 선택은 단순한 최고 암호화 속도보다 다음 요소를 종합한 결과다. - 검증된 코드 재사용 - 플랫폼 간 동작 일관성 - 프레임 파싱 성능 - 보안 로직의 유지보수성 ## 실용적인 권장 사항 - Discord 통화에 계속 참여하려면 2026년 3월 1일 전까지 DAVE 지원 클라이언트로 업데이트해야 한다. - Firefox 사용자는 최소 Firefox 142.0 이상으로 업그레이드해야 한다. - Discord용 앱이나 Social SDK를 개발 중이라면 DAVE 지원 여부를 확인하고, 비-E2EE 통화에 의존하는 구현을 제거해야 한다.

원문 읽기(새 탭에서 열림)
line원문

오픈챗 메시지들로부터 트렌딩 키워드 추출하기 (새 탭에서 열림)

LINE 오픈챗은 사용자 참여를 높이기 위해 채팅방 중심의 추천에서 메시지 콘텐츠 기반의 트렌딩 키워드 추천으로의 변화를 시도하고 있습니다. 이를 위해 일주일 전 대비 빈도가 급증한 단어를 Z-테스트 통계량으로 추출하는 기법을 도입했으며, 중복 메시지로 인한 노이즈를 제거하기 위해 MinHash 알고리즘을 활용한 데이터 정제 과정을 적용했습니다. 이러한 기술적 접근은 일상적인 대화 속에서 실시간 화젯거리를 효과적으로 발굴하여 서비스 활성도를 높이는 데 기여합니다. ## 트렌딩 키워드 추출의 배경과 목적 * 기존 오픈챗 메인 화면은 채팅방 검색과 추천 위주로 구성되어 있어, 이미 특정 방에 정착한 사용자가 새로운 콘텐츠를 탐색할 동기가 부족했습니다. * 개별 메시지는 단건으로 보면 맥락 파악이 어렵고 비문이 많으므로, 유사한 주제의 메시지들을 키워드 중심으로 묶어 가시적인 콘텐츠 덩어리로 제공하는 전략을 수립했습니다. * 이는 마이크로 블로그 서비스가 개별 포스트를 메인에 노출하여 재방문율을 높이는 방식과 유사하며, 사용자들에게 신선한 즐길 거리를 제공하여 서비스 KPI를 개선하고자 했습니다. ## Z-테스트 기반의 화제어 탐지 기법 * 단순 빈도 기반 추출 시 발생하는 일상어(인사, 환영 등) 편중 문제를 해결하기 위해, 빈도 자체가 아닌 '빈도의 급격한 증가량'을 기준으로 트렌딩 키워드를 정의했습니다. * 비교 기준점을 하루 전이 아닌 '일주일 전(D-7)'으로 설정하여, 요일별 반복 단어를 억제하고 며칠간 지속되는 트렌드 피크를 놓치지 않도록 설계했습니다. * 이표본 모비율 차 검정을 위한 Z-테스트 통계량을 사용하여 각 단어의 점수를 계산하며, 이를 통해 빈도수가 작을 때 발생하는 노이즈 효과를 확률 이론에 근거해 제어했습니다. * 통계적 유의미함을 확보하기 위해 빈도가 최소 30% 이상 증가한 단어들만을 최종 후보군으로 선정합니다. ## MinHash를 활용한 중복 메시지 정제 * 복사 및 붙여넣기 등으로 생성된 중복 메시지가 빈도 집계에 미치는 왜곡을 방지하기 위해 집계 전 단계에서 데이터 정제 과정을 거칩니다. * 대량의 텍스트 데이터를 효율적으로 처리하기 위해 차원 축소 기법인 MinHash를 도입하여 유사한 메시지들을 클러스터링했습니다. * 텍스트를 명사 위주로 토큰화(슁글링)한 후 k-MinHash 시그니처를 생성하고, 동일한 시그니처를 가진 메시지 묶음 중 하나만 남기고 나머지는 제거합니다. * 클러스터 내 집합들의 합집합과 교집합 크기를 비교하는 선형 시간 복잡도의 다양성 지표(SetDiv)를 정의하여, 최적의 중복 제거 정밀도를 유지하기 위한 시그니처 길이(k)를 결정했습니다. 단순한 통계 수치를 넘어 채팅 데이터의 특성인 반복성과 중복성을 기술적으로 해결한 이 방식은 실시간 커뮤니티의 활성도를 시각화하는 데 매우 유용합니다. 특히 일주일 전 데이터를 기준선으로 삼는 전략과 MinHash를 이용한 효율적인 중복 제거는 대규모 텍스트 데이터를 다루는 서비스에서 실무적으로 즉시 적용 가능한 강력한 방법론입니다.

dropbox원문

: 엔지니어들이 GPU 서버를 (새 탭에서 열림)

드롭박스의 엔지니어링 팀은 2025년 해킹 위크(Hack Week)를 통해 차세대 AI 워크로드를 지원하기 위한 맞춤형 수냉식 GPU 서버 냉각 시스템을 성공적으로 구축했습니다. 실험 결과, 수냉식 시스템은 극한의 부하 상황에서도 공랭식 대비 온도를 20~30°C 낮추는 뛰어난 성능을 보였으며, 소음 감소와 에너지 효율성 측면에서도 유의미한 이점을 증명했습니다. 이번 프로젝트는 전력 소비가 급격히 증가하는 미래형 GPU 서버를 안정적으로 운영하기 위한 인프라 전략의 핵심 기반이 될 것으로 보입니다. ### 맞춤형 수냉 시스템의 설계와 구축 * 기성품 시스템을 기다리는 대신 라디에이터, 팬, 펌프, 저장조(Reservoir), 튜브, 매니폴드 등 핵심 부품을 직접 조립하여 데이터 센터 규모의 냉각 설비를 축소 모델로 구현했습니다. * 고가의 GPU를 연결하기 전, 시스템의 정상 작동 여부와 유량 및 압력을 실시간으로 모니터링하기 위해 정밀 센서를 통합하여 안전성을 확보했습니다. * 드롭박스 대시(Dropbox Dash)와 같은 AI 서비스 확대로 인해 급증하는 GPU 수요를 감당하기 위해 기존 공랭식 인프라의 한계를 극복하는 데 집중했습니다. ### 열 성능 관찰 및 냉각 효율성 극대화 * 부하 테스트 결과, 액체 냉각 시스템을 적용했을 때 GPU 운영 온도가 기존 공랭 시스템보다 20~30°C 낮게 유지되는 것을 확인했습니다. * CPU와 GPU의 열을 액체가 직접 흡수함에 따라, 서버 내 대형 팬의 속도를 줄이거나 아예 제거할 수 있어 전력 소비를 줄이고 소음을 획기적으로 낮추었습니다. * 액체 냉각이 적용되지 않는 메모리(DIMM)나 네트워크 카드(NIC)를 위해 공기 흐름을 정밀하게 유도하는 배플(Baffle)을 설계하여 서버 내부 전반의 냉각 효율을 최적화했습니다. ### 차세대 AI 인프라를 위한 전략적 가치 * 최신 고성능 GPU는 전력 소비량이 막대하여 조만간 공랭식으로는 중급형 모델까지만 지원 가능할 것으로 예상되며, 최상위 모델 운영을 위해 수냉식 전환은 필수적입니다. * 수냉식 솔루션을 도입하면 서버 간 간격을 좁힐 수 있어, 데이터 센터의 상면적(Footprint)을 효율적으로 사용하면서도 더 높은 컴퓨팅 밀도를 확보할 수 있습니다. * 이번 프로젝트는 단순히 기술적 호기심을 넘어, 향후 고사양 하드웨어가 도입될 때 즉시 적용 가능한 물리적 인프라 기반과 운영 노하우를 선제적으로 마련했다는 데 의의가 있습니다. 이러한 실험적 성과는 AI 기술이 드롭박스의 핵심 서비스로 자리 잡음에 따라 인프라 팀이 직면할 전력 및 발열 문제를 해결하는 이정표가 될 것입니다. 엔지니어들은 향후 여러 데이터 센터에 수냉식 실험실을 확장하여 더 방대한 환경에서의 안정성을 지속적으로 검증할 계획입니다.

line원문

코드 품질 개선 기법 18편: 함수만 보고 관계는 보지 못한다 (새 탭에서 열림)

코드를 리팩토링할 때 단순히 중첩된 내부 루프를 별도의 함수로 분리하는 것만으로는 가독성을 근본적으로 개선할 수 없습니다. 진정한 코드 품질 향상은 기술적인 구조를 따라가는 것이 아니라, '코드가 무엇을 하는지'라는 의미 단위에 맞춰 함수의 경계를 재설정할 때 이루어집니다. 이를 위해 데이터 조회와 처리 로직을 분리하여 중첩된 구조를 평탄화하는 접근 방식이 필요합니다. ## 단순한 함수 추출의 한계와 문제점 페이지나 청크 단위로 분할된 데이터를 처리할 때 흔히 `while`과 `for`가 중첩된 루프 구조가 나타납니다. 이를 개선하기 위해 내부 루프만 별도 함수로 추출하는 방식은 다음과 같은 한계를 가집니다. * **의미 단위의 파편화**: '모든 아이템 조회'라는 하나의 논리적 흐름이 여러 함수에 걸쳐 분산되어 코드의 전체적인 의도를 파악하기 더 어려워집니다. * **가독성 개선 미비**: 함수의 경계와 의미 단위의 경계가 일치하지 않으면, 호출부의 복잡도는 여전히 높게 유지됩니다. * **구조적 종속성**: 단순히 기존의 중첩 구조를 유지한 채 함수를 나누는 것은 데이터가 가진 물리적 구조(페이지, 청크 등)에 로직이 강하게 결합되는 결과를 초래합니다. ## 의미 단위를 반영한 숲 보기 리팩토링 단순 추출에서 벗어나 코드의 의미를 재구성하는 리팩토링은 로직의 복잡도를 획기적으로 낮춥니다. '모든 아이템 조회'와 '메타데이터 저장'이라는 두 가지 핵심 역할에 집중하여 코드를 재설계해야 합니다. * **추상화된 열(Sequence) 활용**: Kotlin의 `Sequence`나 `Iterator`를 사용하여 중첩된 페이지 구조를 하나의 연속된 데이터 흐름으로 변환합니다. * **중첩 루프의 평탄화**: 데이터를 가져오는 복잡한 로직(페이징 처리 등)을 별도의 생성 함수로 캡슐화하고, 이를 사용하는 쪽에서는 단일 `for` 루프만 사용하도록 단순화합니다. * **yieldAll을 이용한 지연 계산**: `sequence { ... }` 블록 내에서 `yieldAll`을 사용하면 다음 페이지가 필요한 시점에만 데이터를 요청하면서도, 외부에는 단일 리스트처럼 보이게 할 수 있습니다. ## 실용적인 결론 리팩토링 시 단순히 추출하기 쉬운 부분을 떼어내는 것이 아니라, 기존 구조를 유지할지 혹은 의미에 맞게 재구성할지 먼저 고민해야 합니다. 루프 중첩뿐만 아니라 조건 분기나 데이터 구조가 복잡하게 얽혀 있을 때도 '의미 단위'를 기준으로 경계를 나누면 훨씬 읽기 쉽고 관리하기 편한 코드를 작성할 수 있습니다.

discord3분 읽기큐레이션 요약

첫 디스코드 서버 시작하기

디스코드 서버는 여러 개의 그룹 DM을 하나로 통합해 친구들이 지속적으로 소통하고 함께 활동할 수 있는 온라인 공간이다. 서버를 만든 뒤 친구를 초대하고, 텍스트 채널과 음성 채널을 목적에 맞게 활용하면 게임뿐 아니라 취미와 일상 대화도 체계적으로 관리할 수 있다. 글은 초보자가 서버를 만들고 친구를 초대하는 과정부터 각 채널의 기본 기능까지 안내한다. ## 디스코드 서버란 무엇인가 - 디스코드 서버는 여러 사람이 모여 대화하고 함께 시간을 보내는 조직화된 공간이다. - 게임을 하면서 음성으로 대화하거나, 게임과 무관한 취미·일상·콘텐츠 이야기도 한곳에서 나눌 수 있다. - 같은 사람들과 매번 새로운 그룹 DM을 만들거나, 하나의 대화방에 여러 주제가 뒤섞이는 문제를 줄여준다. - 서버 안에는 대화 목적에 따라 여러 텍스트 채널과 음성 채널을 만들 수 있다. ## 서버 만들기 - 컴퓨터나 스마트폰용 앱은 `discord.com/download`에서 받을 수 있다. - 앱을 설치하지 않아도 웹 브라우저에서 `discord.com/login`으로 이용할 수 있다. - 계정이 없다면 `discord.com/register`에서 새 계정을 만든다. - 로그인한 뒤 화면 왼쪽의 원형 `+` 버튼을 누르면 새 서버를 생성할 수 있다. - 서버의 용도에 따라 템플릿을 선택하면 관련 채널이 자동으로 만들어진다. - 예시로 글에서는 “Gaming” 템플릿을 사용한다. - 서버 이름과 아이콘을 설정한다. - 서버 이름과 아이콘은 나중에도 변경할 수 있으므로 처음부터 완벽하게 정할 필요는 없다. ## 친구 초대하기 - 서버 생성 직후 표시되는 **“Invite Your Friends”** 버튼을 누르면 친구를 초대할 수 있다. - 디스코드 친구 목록에서 직접 초대하거나, 디스코드 외부에서도 사용할 수 있는 초대 링크를 공유할 수 있다. - 이미 서버에서 대화를 시작해 초대 버튼이 보이지 않는 경우: - 서버 이름을 클릭한다. - 메뉴에서 **“Invite People”**을 선택한다. - 새 초대 링크를 만들거나 친구를 직접 초대한다. - 초대가 완료되면 평소 함께 게임하거나 대화하던 사람들이 하나의 서버에 모이게 된다. ## 텍스트 채널: 글과 파일을 공유하는 공간 - 텍스트 채널은 다른 메신저의 일반적인 대화방처럼 메시지를 입력하는 공간이다. - 짧은 글이나 긴 글, 사진, 파일, 링크 등을 공유할 수 있다. - 메시지에 `@사용자명`을 입력하면 해당 사용자에게 알림을 보낼 수 있다. - 기본적으로 새 텍스트 채널은 서버의 모든 사람이 보고 글을 작성할 수 있다. - 일반 그룹 DM과 달리, 새 주제의 채널을 만들어도 기존 서버 구성원을 다시 초대할 필요가 없다. - 게임 공략, 잡담, 밈 공유 등 주제별로 채널을 나누면 대화를 찾고 따라가기 쉬워진다. ## 음성 채널: 자유롭게 드나드는 대화방 - 음성 채널을 클릭하면 기기의 마이크를 사용해 음성 통화에 참여할 수 있다. - 일반적인 전화나 메신저 통화처럼 큰 벨소리로 다른 사람을 호출하지 않는다. - 사용자는 음성 채널에 참여한 사람 목록을 보고 원할 때 자유롭게 들어오거나 나갈 수 있다. - 따라서 음성 채널은 친구들이 모여 있는 방에 직접 들어가 대화에 합류하는 것과 비슷하다. - 음성만 사용하는 통화는 원하는 만큼 참여할 수 있으며, 영상 통화는 최대 25명까지 지원한다. - 카메라를 켜서 영상 통화를 하거나, 게임 화면과 자신의 화면을 스트리밍할 수 있다. - 게임 공략을 보여주거나 다른 사람의 설정·스킬 트리 등을 설명할 때 화면 공유를 활용할 수 있다. ## 음성 채널의 메시지 기능 - 음성 채널에도 별도의 메시지 공간이 제공된다. - 음성 채널 이름에 마우스를 올리면 말풍선 모양 버튼이 나타난다. - 이 버튼을 누르면 해당 음성 채널과 연결된 일종의 미니 텍스트 채널을 열 수 있다. - 음성 대화와 관련된 밈, 영상, 짧은 메시지를 올릴 때 유용하다. - 관련 없는 일반 텍스트 채널에 맥락 없이 자료를 공유하는 일을 줄일 수 있다. ## 실용적인 활용 방법 - 서버를 만든 뒤 게임, 잡담, 공략, 콘텐츠 공유처럼 자주 다루는 주제별 채널을 나누는 것이 좋다. - 친구를 초대할 때는 직접 초대와 공유 링크 중 편한 방식을 선택하면 된다. - 음성 채널은 통화 예약 없이 자유롭게 참여할 수 있으므로, 게임이나 가벼운 대화용으로 활용하기 적합하다. - 서버 이름과 아이콘은 언제든 변경할 수 있으니 소규모 친구 모임이라면 부담 없이 시작해도 된다.

원문 읽기(새 탭에서 열림)
google원문

구글 AI는 보건 의료 전문 (새 탭에서 열림)

구글은 전 세계적인 의료 인력 부족 문제를 해결하기 위해 AI를 활용한 보건 의료 교육 혁신 방안을 연구하고 있습니다. 최근 발표된 두 가지 연구에 따르면, 학습자 중심의 맞춤형 피드백을 제공하는 'LearnLM' 모델이 기존 AI 모델보다 뛰어난 교육적 성과를 보였으며, 이는 의료진 교육의 질을 높이는 강력한 도구가 될 수 있음을 시사합니다. 이러한 연구 결과는 실제 의료 교육 현장에서 AI가 단순한 정보 전달자를 넘어 숙련된 튜터와 같은 역할을 수행할 수 있다는 가능성을 입증합니다. **의료 학습자 중심의 디자인과 정성적 연구** * **참여형 디자인 워크숍:** 의료 학생, 임상의, 교육자, AI 연구자 등 다학제적 전문가들이 모여 의료 교육에 AI를 통합하기 위한 기회를 정의하고, 임상 추론 학습을 돕는 AI 튜터 프로토타입을 설계했습니다. * **학습자 니즈 파악:** 의대생 및 레지던트를 대상으로 한 정성적 연구 결과, 학습자들은 개인의 지식 수준과 학습 스타일에 맞춰 반응하는 도구를 선호한다는 점이 밝혀졌습니다. * **프리셉터(Preceptor) 행동의 중요성:** 학습자들은 인지 부하 관리, 건설적인 피드백 제공, 질문과 성찰 유도 등 실제 지도 교수와 유사한 AI의 행동이 임상 추론 능력을 키우는 데 필수적이라고 평가했습니다. **LearnLM의 교육적 역량 및 정량적 평가** * **비교 평가 수행:** 교육용으로 미세 조정(fine-tuning)된 'LearnLM'과 기본 모델인 'Gemini 1.5 Pro'의 성능을 비교하기 위해 의료 교육 주제를 아우르는 50개의 가상 시나리오를 설계했습니다. * **현장 중심의 시나리오:** 혈소판 활성화와 같은 기초 의학부터 신생아 황달 같은 임상 주제까지, 실제 의과대학의 핵심 역량 표준을 반영한 시나리오를 통해 모델의 실효성을 검증했습니다. * **블라인드 테스트 결과:** 의대생들은 LearnLM이 학습 목표 달성, 사용 편의성, 이해도 측면에서 더 우수하다고 평가했으며, 특히 실제 학습 상황을 가정한 290개의 대화 데이터를 통해 그 성능이 입증되었습니다. **AI 튜터로서의 교육학적 우수성** * **전문가 평가:** 전문의 교육자들은 LearnLM이 기본 모델에 비해 훨씬 더 나은 교육법(Pedagogy)을 보여주며, "매우 우수한 인간 튜터처럼 행동한다"고 분석했습니다. * **비판적 사고 유도:** 단순히 정답을 알려주는 것에 그치지 않고, 학생이 스스로 생각할 수 있도록 유도하고 부족한 부분을 정확히 짚어주는 능력이 탁월한 것으로 나타났습니다. * **최신 모델 적용:** 연구에서 검증된 LearnLM의 혁신적인 교육 기능들은 현재 'Gemini 2.5 Pro' 모델에 통합되어 실무에서 활용 가능한 상태입니다. 이러한 연구 결과는 AI가 의료 교육의 개인화를 실현하고, 바쁜 임상 현장에서 교육자들의 부담을 덜어주는 동시에 차세대 의료 인력의 역량을 효과적으로 강화할 수 있음을 보여줍니다. 향후 의료 교육 기관에서는 Gemini 2.5 Pro와 같은 모델을 도입하여 학생들에게 24시간 접근 가능한 맞춤형 임상 지도 서비스를 제공하는 것을 적극적으로 고려해볼 수 있습니다.

google원문

의료 언어 모델 평가를 위한 (새 탭에서 열림)

구글 리서치는 건강 분야 대규모 언어 모델(LLM)의 성능을 정밀하고 효율적으로 평가하기 위한 새로운 프레임워크인 '적응형 정밀 불리언 루브릭(Adaptive Precise Boolean rubrics)'을 공개했습니다. 이 방법론은 복잡하고 주관적이기 쉬운 평가 기준을 세분화된 예/아니오(Yes/No) 질문으로 변환하고, 생성된 답변과 관련된 질문만 동적으로 필터링하여 평가 효율성을 극대화합니다. 결과적으로 기존 리커트(Likert) 척도 방식보다 평가 시간을 50% 이상 단축하면서도 평가자 간 일치도(Inter-rater reliability)를 크게 향상시키는 성과를 거두었습니다. ## 정밀 불리언 루브릭의 설계 원리 * **복잡한 기준의 세분화**: 기존의 서술형 답변이나 5점 척도(Likert scale) 방식은 평가자의 주관이 개입될 여지가 많아 일관성이 떨어집니다. 이를 해결하기 위해 평가 항목을 아주 작은 단위의 불리언(Boolean, 참/거짓) 질문으로 쪼개어 평가자의 판단을 단순화했습니다. * **객관성 및 일관성 확보**: 예/아니오 형태의 단순한 질문 구조는 평가자 간의 해석 차이를 줄여주며, 결과적으로 내급 상관 계수(ICC)로 측정되는 평가자 간 신뢰도를 대폭 높여줍니다. * **대사 건강 도메인 적용**: 당뇨병, 심혈관 질환, 비만 등 복잡한 전문 지식이 필요한 대사 건강 분야를 대상으로 루브릭을 설계하여 실무적인 유효성을 검증했습니다. ## 적응형 필터링을 통한 효율성 극대화 * **질문 수 폭증 문제 해결**: 평가 기준을 세분화하면 전체 질문 수가 급격히 늘어나 인간 평가자의 부담이 커지는 문제가 발생합니다. 이를 해결하기 위해 '적응형(Adaptive)' 메커니즘을 도입했습니다. * **LLM 기반 자동 분류**: 제미나이(Gemini) 모델을 제로샷 분류기로 활용하여, 사용자의 질문과 모델의 답변 내용을 분석한 뒤 해당 상황에 꼭 필요한 핵심 루브릭 질문만 동적으로 선별합니다. * **전문가 검증을 통한 신뢰 확보**: 의료 전문가 3인의 교차 검증을 통해 '인간 적응형(Human-Adaptive)' 기준 데이터를 구축하고, 모델이 필터링한 질문 세트가 실제 의학적 관점에서도 타당한지 확인했습니다. ## 평가 신뢰도 및 성능 지표 개선 * **평가 시간 50% 단축**: 적응형 루브릭을 적용한 결과, 기존 리커트 척도 방식보다 평가에 소요되는 시간을 절반 이상 줄일 수 있었으며 이는 대규모 모델 평가의 확장성을 확보해 줍니다. * **신뢰도 지표 향상**: 인간 전문가와 비전문가, 그리고 자동화된 평가 도구 간의 상관관계가 기존 방식보다 높게 나타났으며, 이는 단순화된 점수 체계가 오히려 더 높은 품질의 신호를 제공함을 시사합니다. * **모델 품질 민감도 측정**: 세분화된 불리언 루브릭은 모델 답변의 미세한 결함이나 개선이 필요한 지점을 더 정확하게 식별해내며, 이를 통해 체계적인 모델 고도화가 가능해집니다. 이 프레임워크는 건강 및 의료와 같이 높은 안전성과 정확성이 요구되는 전문 분야에서 LLM을 평가할 때 직면하는 비용과 신뢰성 문제를 동시에 해결할 수 있는 실용적인 대안을 제시합니다. 특히 인간의 전문적인 판단과 모델의 자동화된 필터링을 결합함으로써 차세대 의료 AI 서비스의 검증 표준으로 활용될 가능성이 높습니다.

figma3분 읽기큐레이션 요약

버전 관리: Figma Make가

Figma Buzz의 영상 재생 기능은 단순한 재생 버튼 배치만으로 해결하기 어려웠다. Figma의 프로덕트 디자이너 Natasha Tenggoro는 Figma Make를 활용해 영상 위치와 가시성에 따른 재생 UI 동작을 빠르게 프로토타이핑했고, 이를 통해 디자인 의도를 엔지니어링 팀과 구체적으로 공유했다. 처음에는 단일 영상 지원으로 시작했지만, 다중 영상 지원이 가능해지면서 기존 재생 경험을 다시 설계하게 됐다. ## 영상 재생 UI가 어려웠던 이유 - Figma Buzz에서는 영상 위에 로고, 텍스트, 이미지 등 여러 요소를 겹쳐 배치할 수 있다. - 따라서 영상 중앙에 고정된 일반적인 재생 버튼은 다른 디자인 요소를 가리거나 작업을 방해할 수 있었다. - 사용자가 영상을 캔버스 안팎으로 자유롭게 이동할 수 있어 다음과 같은 상태를 고려해야 했다. - 영상이 프레임 안에 완전히 있을 때 - 일부만 프레임 밖으로 나갔을 때 - 영상 대부분 또는 전체가 프레임 밖에 있을 때 - 영상 크기를 크게 확대하면 재생 컨트롤이 영상과 떨어져 캔버스의 엉뚱한 위치에 표시될 수 있었다. - 여러 자산을 동시에 보는 그리드 뷰에서는 재생 컨트롤이 다른 자산과 겹칠 가능성도 있었다. ## Figma Make를 이용한 빠른 프로토타이핑 - 기존 Figma Design 프레임을 Figma Make에 가져와 이미 구성된 UI를 기반으로 프로토타입을 만들었다. - 핵심 프롬프트는 다음과 같았다. - 고정된 부모 프레임 안팎으로 미디어 프레임을 드래그 - 부모 영역 밖으로 나간 영상 부분은 잘라내지 않고 20% 불투명도로 표시 - 재생 UI 배지는 영상의 오른쪽 위에 고정 - 배지가 부모 프레임 밖으로 나가면 보이도록 위치 조정 - 영상의 20% 미만만 보이면 배지를 페이드아웃 - 영상이 다시 보이면 배지를 페이드인 - 실제 동작하는 코드와 인터랙션을 보여줌으로써 엔지니어가 기능의 범위와 구현 가능성을 빠르게 판단할 수 있었다. - 그 결과 추상적인 디자인 설명이 우선순위가 있는 기능 논의로 전환됐고, 디자인 의도와 개발 비용 사이의 간극을 줄일 수 있었다. ## 버전 1: 단일 영상 재생 - 대부분의 마케팅 자산이 영상 하나만 포함한다는 점과 촉박한 일정 때문에 초기에는 단일 영상 지원을 선택했다. - 재생 UI를 캔버스 중앙이 아니라 영상 자체에 연결해 다른 요소를 가리지 않도록 했다. - 영상의 위치와 부모 프레임과의 관계에 따라 재생 배지의 위치와 표시 여부가 바뀌도록 설계했다. - 이 접근 방식은 단일 영상에는 적합했지만, 다중 영상 지원이 추가되면서 한계가 드러났다. ## 다중 영상 지원으로 인한 재설계 - 기술 검토 결과, 출시 일정 안에 하나의 Figma Buzz 자산에서 여러 영상을 지원할 가능성이 생겼다. - 영상 콜라주처럼 여러 영상이 포함된 자산에서는 두 가지 선택지가 있었다. - 각 영상을 개별적으로 클릭해 재생 - 하나의 버튼으로 모든 영상을 동시에 미리보기 - 팀은 UI가 여러 영상 위에 반복적으로 나타나 디자인을 가리는 문제를 피하기 위해 전체 재생 컨트롤 하나를 선택했다. - 이 방식은 화면을 더 깔끔하게 유지하면서 자산 전체의 움직임을 한 번에 확인할 수 있는 통합적인 미리보기 경험을 제공한다. - 다중 영상 지원은 기존의 “영상별 재생 UI” 가정을 바꾸고, 재생 경험을 개별 객체 중심에서 전체 자산 중심으로 전환하게 만들었다. ## 실용적인 결론 복잡한 인터랙션은 정적인 화면이나 말로 설명하기보다 실제로 작동하는 프로토타입으로 보여주는 편이 효과적이다. 특히 영상 위치, 가시성, 겹침, 다중 객체 재생처럼 상태가 많은 기능에서는 Figma Make를 사용해 초기 단계부터 엣지 케이스를 검증하면 디자인과 개발 간 커뮤니케이션을 빠르게 개선할 수 있다.

원문 읽기(새 탭에서 열림)