[GN#279] 차세대 경쟁 Arena 18가지

2024-11-04 ~ 2024-11-10 사이의 주요 뉴스들

맥킨지가 비즈니스 환경과 세상을 변화시킬 수 있는 "산업"들을 Arena라고 지칭하며, 이에 대해 분석한 "차세대 경쟁 아레나" 보고서를 내놨습니다. 아레나에 대해 이해하면 투자, R&D, 가치 창출이 어디서 일어나는지 알 수 있는데요. 지난 20년간 형성된 12개의 아레나에 대한 분석과 앞으로 15년을 내다본 미래의 18가지 아레나를 선정하였습니다. 특히 이 18개 미래 아레나는 현재의 12개 아레나보다 더 큰 변화를 불러올 것으로 예상되기 때문에 어떤 산업들이 아레나에 포함되는지 꼭 읽어 보시기 바랍니다.

이제 업무의 필수 도구가 된 Git은 워크플로우에 따라 다양한 방식으로 설정을 커스터마이즈 하거나 Alias 및 서브 커맨드로 확장하여 생산성을 향상시킬수 있는데요. ToolGit은 여러 서브 커맨드를 추가하여 삶을 편하게 해주는 Git 생산성 툴킷입니다. 한번 둘러보시고 현재 작업 방식에 맞는 명령어는 가져다 사용해 보세요.

GeekNight 2024 - 긱뉴스 밋업

  • GeekNight 참석자 등록이 시작되었습니다. 11월 12일 까지만 신청받으니 관심있으신 분은 꼭 신청하세요. 가점제 추첨 방식으로 진행됩니다.
  • 라이트닝 토크 리스트도 공개 합니다. 제목만 들어도 궁금한 발표가 많네요.
    • 주식은 로봇이 해주고, 저는 놀고만 싶습니다 - dsp 
    • 인지과학 연구로 증명된 학습 보조 도구 Anki: 10배 더 효과적으로 활용하는 방법 - 배휘동 
    • Notion에서 Google Docs로 돌아가는 이야기 - 김수빈 
    • GTD와 Inbox 그리고 생산성 시스템의 함정 (부제: 우리 모두는 J가 될 수 없다.) - 데이브 
    • 5분이면 저보다 창업 잘하는 개발자가 됩니다: 개발자 대표 창업기 - nurinamu
    • 50대 개발자들의 커리어 해킹: 임원, 괴수, 스타트업 그리고 새로운 출발점 - 524
    • 신생 개발팀의 AI 기술 활용법: 생성형 AI와 함께 성장하기 - popenaga
    • 테니스에 미친 개발자가 테니스 다이어리 앱을 만들기까지 - 박시형 
    • Cursor와 Expo로 고통없이 앱 만들기 - sungchi 
    • 5년 동안 집에서 서버를 운영한 썰 - K리그 프로그래머 
    • 운영비 0원, 글로벌 수익형 AI 서비스 제작기 - 조코딩

Feedback : 긱뉴스 위클리 어떻게 읽고 계신가요? 의견과 제안 부탁드려요

Show GN - 직접 만드신 오픈소스나, 재직중인 스타트업의 제품/서비스를 소개해주세요.


매주 월요일 아침, 지난 일주일간의 GeekNews 중 엄선한 뉴스들을 이메일로 보내드립니다.


  • 차세대 경쟁 Arena 18가지 - 맥킨지 보고서 [213p PDF]
    • 현재의 12개 아레나 : 소프트웨어, 반도체, 소비자 인터넷, 전자상거래, 소비자 가전, 바이오제약, 산업용 전자제품, 결제, 영상 및 오디오 엔터테인먼트, 클라우드 서비스, 전기차(EV), 정보 기반 비즈니스 서비스
    • 미래의 18개 아레나 : 전자상거래, 전기차, 클라우드 서비스, 반도체, AI 소프트웨어 및 서비스, 디지털 광고, 스트리밍, 공유 자율주행차, 우주, 사이버보안, 배터리, 비디오 게임, 로봇공학, 산업용 및 소비자용 생명공학, 모듈식 건축, 핵분열 발전소, 미래 항공 모빌리티, 비만 및 관련 질환 치료제
  • ToolGit - Git 생산성 툴킷

    Git의 생산성을 높이기 위한 다양한 서브커맨드를 제공하는 스크립트 모음. 원격에 더 이상 존재하지 않는 로컬 브랜치를 삭제하는 git-delete-gone-branches, 모든 원격 트래킹 브랜치를 fetch하고 fast-forward하는 git-forward, 그리고 예쁜 커밋 그래프를 표시하는 git graph

  • HTML to React & Figma - 웹사이트를 React 컴포넌트로 변환하는 크롬 확장

    웹 페이지의 HTML을 React 코드나 Figma 디자인으로 변환할 수 있는 확장으로, 보고 있는 웹사이트의 디자인을 React 코드로 변환하거나 Figma에서 편집 가능하게 변환할 수 있습니다. 이 도구는 AI를 사용하여 기존 디자인을 맞춤화하고 수정할 수 있는 기능을 제공합니다.

  • 유용한 내장 macOS 명령줄 유틸리티

    security 명령어를 사용하면 키체인에 저장된 비밀번호에 프로그래밍적으로 접근할 수 있으며, open 명령어로 터미널에서 파일을 열 수 있습니다. pbcopypbpaste는 텍스트를 클립보드에 복사하고 붙여넣을 수 있는 유틸리티로, 파일에서 데이터를 가져와 다른 애플리케이션에 넣을 때 유용합니다. 또한, caffeinate 명령어를 사용하면 맥이 잠들지 않도록 할 수 있으며, uuidgen을 통해 UUID를 생성할 수 있습니다.

  • pqoqubbw/icons - 부드러운 애니메이션을 포함한 아이콘 오픈소스

    오픈소스 라이브러리 Lucide의 아이콘들을 Framer-Motion을 사용하여 애니메이션으로 구현한 프로젝트입니다. 현재 Home, 메뉴, 화살표 등 46종의 기본 아이콘을 제공하며, 코드 복사 및 tsx 파일로 다운로드가 가능합니다. 이 아이콘들은 개인 및 상용 프로젝트에 자유롭게 사용할 수 있습니다.

  • 직원 성과 지표에 대해 마음이 바뀌었습니다

    작성자 Rachel Kroll 은 구글,페이스북,Lyft 등에서 SRE/SysAdmin으로 근무했던 엔지니어입니다. 과거에는 직원들의 업무 산출량을 커밋 수나 댓글 수로 측정하는 도구를 만들었으나, 최근에는 이러한 도구가 잘못되었다고 판단하고 더 이상 추천하지 않기로 했다고 하네요. 직원 성과와 효율성은 관리자의 고유 업무이며, 별도의 도구나 타인의 도움 없이 관리자가 직접 책임져야 합니다. 개발자 성과 측정 도구는 정량적 지표에만 집중하여 중요한 질적 요소를 간과할 수 있으며, 이는 팀 문화와 생산성에 부정적인 영향을 미칠 수 있습니다.

  • JSON 인젝션을 이용한 API 공격

    삼성 스마트 허브의 JSON 인젝션 취약점을 악용하여 SQL 인젝션과 버퍼 오버플로우를 통해 원격 코드 실행까지 이어지는 공격이 가능했으며, 이는 API의 JSON 처리 방식의 불일치가 심각한 보안 취약점을 초래할 수 있음을 보여줍니다. JSON 인젝션은 악성 데이터를 JSON 스트림에 삽입하여 응용 프로그램의 동작을 변경할 수 있는 취약점으로, 특히 여러 파서가 관련된 경우 데이터 처리 방식의 불일치가 문제의 근본 원인입니다. API가 현대 애플리케이션의 핵심이기 때문에, API의 데이터 처리 방식에 대한 보안을 강화하는 것이 중요합니다.

  • Rust로 성공적인 재작성을 끝내고 배운 것들

    Rust로의 재작성 과정에서 코드의 가독성과 성능 최적화가 개선되었으며, 불필요한 코드를 제거할 수 있었습니다. 그러나 unsafe 블록 사용으로 인한 정의되지 않은 행동 추적, 메모리 누수 문제, 크로스 컴파일 및 Cbindgen의 한계 등 여러 어려움이 있었습니다. Rust와 C의 상호작용에서 발생하는 복잡성과 마찰로 인해 예상보다 많은 노력이 필요했으며, 향후 개선이 필요하다고 주장합니다.

  • 그냥 자바를 쓰세요

    저자는 파이썬을 좋아하지만 모든 곳에서 자바를 사용하는 이유로 자바의 성능과 유지보수의 용이성을 들고 있습니다. 자바스크립트와 파이썬을 사용했을 때의 경험을 통해 자바의 장점을 설명하며, 특히 정적 타입 언어의 생산성과 효율성을 강조합니다.. 또한, 다른 정적 타입 언어들 대신 자바를 선호하는 이유로 C/C++의 적용 어려움, C#의 크로스 플랫폼 지원 부족, Scala의 복잡성 등도 언급합니다. 댓글이 50개가 넘었네요. 2014년도 글이라는 것을 염두에 두고 보세요.

  • Diagrams - Diagram as Code

    Diagrams는 Python 코드로 클라우드 시스템 아키텍처를 그릴 수 있는 도구로, 새로운 시스템 아키텍처를 프로토타이핑하거나 기존 아키텍처를 설명하는 데 유용합니다. 이 도구는 AWS, Azure, GCP 등 주요 클라우드 제공자뿐만 아니라 온프레미스 노드와 SaaS도 지원하며, 아키텍처 다이어그램의 변화를 버전 관리 시스템에서 추적할 수 있게 해준다. 당근마켓에 계신 권민재님이 만드신건데 GitHub Star가 이제 38700개까지 올라갔네요!

  • Matrix 2.0 출시

    Matrix 2.0은 개방적이고 분산된 안전한 커뮤니케이션 앱을 주류로 만들기 위해 즉시 로그인, 시작, 동기화 기능을 제공하는 Simplified Sliding Sync, OpenID Connect를 통한 차세대 인증, 대규모 암호화 그룹 통화를 지원하는 MatrixRTC, 그리고 사용자가 암호화를 거의 인식하지 못하도록 개선된 보이지 않는 암호화를 구현했습니다.

  • 2024년에도 JAVA가 여전히 인기 있는 25가지 이유

    Java는 성숙한 생태계와 WRITE ONCE, RUN EVERYWHERE의 특징을 가지고 있으며, 이전 버전과의 호환성을 유지하는 강 타입 언어입니다. 또한, 빠른 릴리스 주기와 지속적인 개선, 오픈 소스 라이브러리 및 프레임워크, 멀티쓰레딩, 메모리 관리와 가비지 컬렉션 등 다양한 장점을 제공합니다. Java는 풍부한 문서와 강력한 테스트 기능, 거대한 커뮤니티를 통해 개발자들에게 안정적이고 효율적인 개발 환경을 제공합니다. 이 글 역시 댓글이 50개가 넘었네요. 이번주는 자바 글 2개가 아주 핫하네요. 건강한 토론이 이어질수 있도록 도와주세요.

  • Rust의 가장 미묘한 구문

    Rust의 letconst는 각각 변수 선언과 컴파일 타임 상수를 정의하는 데 사용되며, const는 선언 순서에 상관없이 사용할 수 있어 자바스크립트 출신 프로그래머에게는 혼란을 줄 수 있습니다. Rust의 패턴 매칭은 match 구문을 통해 다양한 경우를 처리할 수 있으며, 상수는 패턴으로 사용되어 매칭의 유연성을 높입니다. 그러나 상수와 변수의 이름이 혼동될 수 있어, 특히 대소문자 규칙을 지키지 않으면 코드의 의도와 다르게 동작할 수 있는 위험이 있습니다. 사실 큰 문제가 아니긴 한데 Rust 의 let 과 const 구문에 대해 깊이 이해하기에는 좋은 글인 거 같아요.

  • re-buttonization : 터치스크린이 사라지고 촉각(Tactile) 컨트롤이 돌아온다

    최근 기술 트렌드로 물리적 버튼과 촉각적 컨트롤이 다시 주목받고 있으며, 이는 터치스크린에 대한 피로감과 물리적 버튼의 촉각적 피드백에 대한 갈망에서 비롯된 것입니다. Rachel Plotnick 교수의 연구에 따르면, 버튼을 누르는 행위는 과거와 현재 모두에서 두려움과 쾌락을 동시에 제공하며, 이는 광고와 기술 단순화에 활용될 수 있습니다. 다양한 인터페이스 옵션을 제공하는 것이 중요하며, 이는 접근성 문제를 해결하고 각 상황에 맞는 최적의 인터페이스를 찾는 데 도움이 됩니다.

  • TutorialLLM - LLM에 의해 진행되는 프로그래밍 학습 플랫폼

    TutorialLLM은 초중고 교육을 위한 셀프 호스팅 프로그래밍 학습 플랫폼으로, 교육 콘텐츠 제작자와 학습자를 위해 설계되었습니다. 이 플랫폼은 음성 및 텍스트 기반 AI 상호작용을 Scratch의 블록 편집기인 Blockly에 통합하여 서버 측 코드 실행을 지원합니다. 학생들은 별도의 설정 없이 Minecraft에서 직접 코드를 테스트할 수 있습니다.

  • WebSocket 때문에 AWS 비용으로 $1M(13억) 내다가 절감한 방법

    recall은 AWS에서 대규모 인프라를 운영하며 회의용 봇을 제공하는 서비스로, 비용 절감을 위해 WebSocket 대신 공유 메모리를 활용한 전송 방식을 구현했습니다. WebSocket 사용 시 발생하는 단편화와 마스킹으로 인한 연산 비용 문제를 해결하기 위해 Chromium을 포크하여 사용자 정의 기능을 추가하고, 링 버퍼 형태의 공유 메모리 기반 전송을 통해 CPU 사용량을 최대 50%까지 줄였습니다. 이러한 최적화를 통해 연간 AWS 비용을 백만 달러 이상 절감할 수 있었습니다.

  • FFMpeg, 손으로 작성한 AVX-512 어셈블리 코드로 94x 성능 향상

    FFmpeg 개발자들이 AVX-512 명령어 세트를 사용하여 특정 기능을 최적화함으로써 성능을 최대 94배까지 향상시킬 수 있었다고 밝혔습니다. 이 최적화는 특히 AVX-512를 지원하는 하드웨어에서 실행되는 사용자에게 유용하며, AMD의 Ryzen 9000 시리즈 CPU는 이를 완전히 활용할 수 있습니다. 그러나 인텔의 최신 코어 프로세서에서는 AVX-512가 비활성화되어 있어 해당 CPU 사용자들은 이 성능 향상을 경험할 수 없습니다.

  • GitPod, Kubernetes를 떠나기로 결정 + GitPod Flex 발표

    GitPod는 6년간 사용해온 쿠버네티스가 개발 환경 구축에 적합하지 않다는 결론을 내리고, 새로운 아키텍처인 GitPod Flex를 발표했습니다. GitPod Flex는 제로 트러스트 보안을 우선시하며, 클라우드, 온프레미스, 로컬 환경에서 실행 가능하고, 개발 환경의 복잡성을 줄이면서도 보안 기반을 강화합니다.

  • Medium에 AI Slop이 넘쳐나고 있다

    Medium 플랫폼에서 AI 생성 콘텐츠가 급증하고 있으며, 최근 분석에 따르면 게시물의 47% 이상이 AI 생성일 가능성이 높습니다. Medium의 CEO Tony Stubblebine은 AI 콘텐츠 증가를 인정하면서도, 대부분의 AI 생성 콘텐츠가 조회수가 없다고 주장하며 문제의 심각성을 부인하고 있습니다. Medium은 AI 콘텐츠 억제를 위해 정책을 업데이트하고 있지만, AI 특화 집행 도구는 없으며, 사람에 의한 큐레이션과 스팸 필터링으로 문제를 해결하려고 합니다.

  • Rust 기반 Redox OS, RISC-V 지원 및 Raspberry Pi 4에서 부팅 가능해짐

    Redox OS는 Rust로 작성된 오픈 소스 운영 체제로, 이제 RISC-V를 지원하며 QEMU 에뮬레이터에서 데스크톱과 함께 실행할 수 있습니다. 또한, Raspberry Pi 4에서 부팅이 가능해졌으며, COSMIC Store와 다양한 소프트웨어가 Redox OS로 포팅되었고, 여러 ACPI 드라이버 업데이트가 이루어졌습니다.

  • CMake는 여전히 자신의 임무를 모른다.

    CMake는 C++ 개발자들의 요구를 충족시키지 못하고 있으며, 일관성 없는 언어로 프로젝트 정의를 빌드 시스템으로 번역하는 데 실패하고 있습니다. C++ 커뮤니티는 Cargo와 같은 도구를 선호하는데, 이는 엄격한 프로젝트 구조와 간단한 구성 시스템을 제공하기 때문입니다. CMake는 여전히 C++ 세계에서 널리 사용되지만, 더 적은 옵션과 간단한 사용법을 제공하는 대안이 필요하다는 의견이 제기되고 있습다.

  • 임베디드 리눅스에서 systemd가 문제가 되는 이유

    systemd는 다양한 기능을 제공하지만, 임베디드 시스템에서는 오히려 자원 소모가 많고 복잡성이 증가하여 부적합할 수 있습니다. 특히, Raspberry Pi와 같은 장치에서는 systemd가 SystemV init보다 더 많은 메모리를 사용하며, 부팅 시간이 증가할 수 있습니다. 또한, systemd의 확산으로 인해 대안이 줄어들고 있어, 임베디드 환경에 적합한 더 작은 대안을 개발하고 유지할 필요가 있습니다.

  • pg_flo – PostgreSQL 데이터를 실시간으로 스트리밍, 변환 및 재라우팅

    pg_flo는 PostgreSQL 데이터베이스 간 데이터를 실시간으로 스트리밍하고 변환하며 재라우팅하는 솔루션으로, 논리적 복제를 통해 거의 실시간으로 데이터 변경 사항을 스트리밍합니다. 이 솔루션은 대량 복사로 초기 데이터 동기화를 빠르게 수행하고, 정규 표현식을 기반으로 변환을 적용하여 민감한 데이터를 마스킹하거나 열 값에 따라 필터링할 수 있습니다. 또한, NATS 메시지 브로커를 사용하여 유연성과 확장성을 제공하며, 변환과 필터링은 데이터가 목적지에 도달하기 전에 적용됩니다.

  • 안전한 Go 코드 작성하기

    Go 코드를 안전하게 작성하기 위해서는 최신 Go 버전을 유지하고, 정적 코드 분석기를 사용하여 코드 품질과 보안을 평가하는 것이 중요합니다. go vet, staticcheck, golangci-lint 등의 도구를 활용하여 코드의 잠재적 문제를 식별하고 수정할 수 있으며, 경쟁 상태 탐지와 취약점 소스 코드 스캔을 통해 보안성을 강화할 수 있습니다. 또한, 퍼징 기법을 통해 다양한 입력 데이터를 테스트하여 버퍼 오버플로, SQL 인젝션 등의 보안 결함을 사전에 발견할 수 있습니다.

  • Nvidia GeForce GPU 보안 결함 발견, 최대한 빨리 드라이버 업데이트 하세요

    GeForce GPU 소유자들에게 보안 취약점이 발견되어 최신 드라이버 업데이트를 다운로드할 것을 권고하고 있습니다. 총 8개의 높은 심각도 등급의 취약점이 있으며, 이를 악용하면 시스템 전체에 접근하여 악성 코드를 실행하거나 개인 데이터를 훔칠 수 있습니다. GeForce, Nvidia RTX, Quadro, NVS, Tesla 사용자는 Windows와 Linux에서 각각 지정된 버전으로 드라이버를 업데이트해야 하며, Nvidia의 수동 드라이버 검색 도구나 GeForce Experience 앱을 통해 최신 드라이버를 받을 수 있습니다.

  • Browser-Use - LLM을 이용한 웹 오토메이션 오픈소스

    웹사이트와의 상호작용을 간단하게 만들어 주며, LangChain이 지원하는 모든 언어 모델과 호환됩니다. 이 라이브러리는 페이지에서 대화형 요소를 자동으로 탐지하고, XPath를 통해 스크래핑을 쉽게 할 수 있도록 도와줍니다. 또한, 사용자 정의 가능한 액션과 동적 콘텐츠 처리 기능을 제공하며, LLM이 실수할 경우 에이전트가 스스로 행동을 수정할 수 있는 기능도 포함되어 있습니다.

  • Ollama 0.4, Llama 3.2 Vision 지원

    Llama 3.2 Vision은 11B/90B 크기의 이미지 추론 생성 모델로, 시각 인식, 이미지 추론, 캡션 생성 및 이미지 관련 질문에 최적화되어 있습니다. 사용자는 ollama run llama3.2-vision:90b 명령어를 통해 이미지를 프롬프트에 추가하여 질문할 수 있습니다. 이 모델은 필기체 인식, OCR, 차트/테이블 해석 및 이미지에 대한 Q/A에 활용될 수 있습니다.

  • Waymo, 자율주행을 위한 End-to-End 멀티모달 모델 EMMA 공개

    Waymo는 자율주행을 위한 End-to-End 멀티모달 모델 EMMA를 공개했으며, 이는 구글의 Gemini 멀티모달 LLM을 활용하여 센서 데이터에서 차량의 미래 궤적을 생성하고 자율주행에 특화된 학습을 통해 도로 상황에 대한 이해력을 높입니다. EMMA는 경로계획, 3D 객체인식 등 다양한 자율주행 작업에서 최고 수준의 성능을 달성했으며, 여러 작업을 공동학습하여 성능을 향상시킵니다. 그러나 장기 비디오 시퀀스 처리의 제한, 라이다 및 레이더 입력의 미활용 등의 한계가 있으며, 향후 멀티모달 기술을 통해 자율주행 시스템의 성능과 일반화 능력을 높일 가능성을 탐구하고 있습니다.

  • NPM에 업로드된 수백 개의 악성 코드 라이브러리가 개발자 머신에 멀웨어를 설치중

    현재 NPM 저장소에 수백 개의 악성 패키지가 업로드되어 개발자 장비를 감염시키려는 공격이 진행 중입니다. 악성 패키지는 합법적인 라이브러리와 유사한 이름을 사용하여 개발자를 속이며, 이더리움 블록체인을 활용해 IP 주소를 숨기는 방법을 사용하고 있습니다. 오타를 이용한 공격인 typosquatting이 널리 사용되고 있어 개발자들은 패키지 이름을 주의 깊게 확인해야 합니다.

  • Mozila VPN 한국 서비스 개시

    Mozila VPN이 한국에서 서비스를 시작했으며, 데스크탑과 모바일 클라이언트를 모두 지원합니다.

  • 마이크로소프트, 1983년부터 사용된 "메모장"에 AI 텍스트 편집 기능 추가

    Microsoft는 Notepad에 AI 기반 텍스트 편집 기능인 "Rewrite"를 추가하여 문장을 다시 표현하거나 어조를 조정하고 콘텐츠의 길이를 수정할 수 있게 했습니다. 이 기능은 Windows Insiders에게 미리보기로 제공되며, 사용하려면 Microsoft 계정에 로그인해야 합니다. 또한, Microsoft는 Paint의 새로운 AI 이미지 편집 도구도 추가하여 이미지에 추가하거나 일부를 제거하는 기능을 제공합니다.

  • jaqt - JavaScript Queries and Transformations

    jaqt는 GraphQL과 SQL에서 영감을 받아 Array와 Object를 위한 쿼리 엔진을 제공합니다. 이 라이브러리는 JavaScript에서 GraphQL 스타일의 Array.select()와 Array.where() 기능을 사용할 수 있게 해줍니다. 예를 들어, 특정 조건에 맞는 데이터를 선택하고 변환하는 기능을 제공합니다.


✓ 사내 커뮤니케이션 도구에 GeekNews Bot을 추가해서 멤버들과 함께 새 글을 받아보세요
ㅤ→ Slack봇, 잔디봇, Teams봇, Discord봇, 구글 챗 봇, Swit 봇
긱뉴스는 RSS로도 구독 가능합니다
✓ 주위분들께 긱뉴스 위클리 - https://news.hada.io/weekly 뉴스레터를 추천해 주세요.