Category: 개발

Fivetran, Census 인수: 데이터 여정 완전 자동화

2025-05-01
Fivetran, Census 인수: 데이터 여정 완전 자동화

Fivetran의 역방향 ETL 기업 Census 인수는 데이터 통합 분야의 획기적인 발전을 의미합니다. Census의 안정적인 역방향 ETL 엔진은 Salesforce, HubSpot 등의 운영 애플리케이션으로 데이터 웨어하우스에서 거버넌스된 데이터를 매끄럽고 안정적으로 이동시켜 분석과 실행 간의 순환을 완성합니다. 이를 통해 Fivetran 플랫폼은 데이터 수집 및 변환을 넘어 확장되어 고객은 사용자 지정 코드나 지속적인 유지 관리 없이 자동화 및 관측 가능성을 통해 실시간 의사 결정, AI, 비즈니스 운영을 가능하게 합니다. Canva 등의 고객은 이미 Fivetran과 Census를 사용하여 이메일 개봉률 향상, 플랫폼 참여율 증가, 엔지니어링 시간 대폭 절약 등 눈에 띄는 성과를 달성했습니다.

개발 역방향 ETL

Mac 앱 실행 속도 저하 원인: 맬웨어 검사 또는 해시 캐시 누락?

2025-05-01

블로거 Jeff Johnson은 작년에 Mac 앱 실행 속도 저하의 원인이 syspolicyd 프로세스의 맬웨어 검사 때문이라는 것을 발견했습니다. 그러나 블로거 Howard Oakley는 이에 동의하지 않습니다. Johnson은 spindump를 사용하여 Oakley의 주장을 반박하고 맬웨어 검사가 동적 라이브러리를 로드할 때 dlopen에서 발생한다는 것을 보여주었습니다. Oakley는 실행 속도 저하의 원인이 Frameworks 폴더 내 파일의 SHA-256 해시 캐시 누락 때문이라고 주장합니다. Johnson은 Oakley의 이론은 증거가 부족하며 유니버설 바이너리가 두 개의 아키텍처를 포함한다는 사실을 무시하기 때문에 Oakley의 해시 계산 시간 추정치가 부정확하다고 주장합니다. 이 논쟁의 핵심은 시스템 로그와 프로세스 스냅샷에 대한 상이한 해석과 캐싱 메커니즘에 대한 상이한 이해에 있습니다.

개발

Redis가 AGPLv3 오픈소스 라이선스로 복귀

2025-05-01

Redis의 주요 개발자인 antirez는 Redis가 AGPLv3 오픈소스 라이선스로 돌아온 과정을 회상합니다. 그는 개인적으로 AGPL을 강력하게 주장했으며, SSPL은 커뮤니티에서 널리 받아들여지지 않았다고 생각했습니다. 공식적으로 출시된 Redis 8은 AGPLv3 라이선스를 사용하며, antirez는 만족하고 있습니다. 그는 Redis, 특히 새로운 데이터 유형인 Vector Sets의 지속적인 개선을 약속합니다.

개발

오픈소스 자체 호스팅 북마크 관리자: 당신의 프라이버시, 당신의 선택

2025-05-01

이 오픈소스 자체 호스팅 북마크 관리자는 사용자의 프라이버시를 최우선으로 합니다. 모든 화면 크기에 맞는 반응형 디자인, 콘텐츠를 쉽게 검색할 수 있는 강력한 검색 기능, 웹페이지를 매끄럽게 저장할 수 있는 브라우저 확장 기능을 갖추고 있으며, 일괄 작업, 가져오기/내보내기, 어둡게/밝게 모드 전환을 지원합니다. 가장 중요한 점은 사용자 데이터를 제3자에게 절대 판매하지 않으며, 사용자 정의 솔루션을 쉽게 만들 수 있도록 안전한 API 통합을 제공한다는 것입니다. 프라이버시를 중시하고 강력한 이 북마크 관리자를 오늘부터 경험해 보세요!

SQLite 데이터베이스 복사 속도 향상: 텍스트 덤프 비법

2025-05-01
SQLite 데이터베이스 복사 속도 향상: 텍스트 덤프 비법

저자는 큰 SQLite 데이터베이스를 복사할 때 인덱스 파일 크기 때문에 속도 병목 현상을 겪었습니다. 데이터베이스를 텍스트 파일(.dump 명령어 사용)로 덤프한 다음 gzip으로 압축하여 파일 크기를 크게 줄이고 복사 속도를 높이는 방법을 발견했습니다. 3.4GB 데이터베이스를 직접 복사하는 것과 비교하여 이 방법은 파일을 240MB로 압축하여 14배의 속도 향상을 달성했습니다. 또한 이 방법은 복사 중 업데이트로 인한 데이터베이스 손상 문제를 방지하여 안정성을 높입니다.

Windows 7의 30초 부팅 버그: 단순한 코딩 오류?

2025-05-01
Windows 7의 30초 부팅 버그: 단순한 코딩 오류?

Windows 7을 기억하시나요? 마이크로소프트의 성공작이었지만, 특이한 버그가 일부 사용자들을 괴롭혔습니다. 단색 배경 화면을 사용할 경우 30초의 부팅 지연이 발생했습니다. 최근 블로그 게시물에서 그 원인이 밝혀졌는데, 단순한 코딩 오류였습니다. 시스템은 배경 이미지 준비 완료를 확인하는 메시지를 기다렸지만, 이 메시지는 복잡한 비트맵을 사용할 경우에만 전송되었고, 단색에서는 전송되지 않았습니다. 더욱 심각한 것은, 바탕 화면 아이콘을 숨기는 그룹 정책 설정이 코드 내 위치 때문에 문제를 악화시켰습니다. 몇 달 후에 배포된 수정은, 얼핏 보기에는 사소한 코딩 실수가 얼마나 큰 문제를 야기할 수 있는지를 보여줍니다.

강력한 브라우저 기반 CSV 변환 도구: 손쉽게 데이터 변환

2025-05-01

이 강력한 온라인 CSV 변환 도구를 사용하면 브라우저에서 다양한 데이터 형식을 쉽게 처리할 수 있습니다! CSV, TSV, XLSX, XLS, TXT 파일을 자동으로 형식과 인코딩을 감지하여 가져올 수 있습니다. 헤더 이름 변경, 필드 활성화/비활성화, 드래그 앤 드롭을 통한 열 재정렬, 열 분할 또는 병합, 정규 표현식을 사용한 텍스트 바꾸기, JSON 또는 XML로 데이터 변환 등이 가능합니다. 전체 화면 보기를 통해 대용량 데이터 세트를 쉽게 검사할 수 있으며, 검색, 필터링, 정렬 기능도 내장되어 있습니다. 데이터 세트 간의 차이점을 비교하여 분석할 수도 있습니다. 다운로드나 설치 없이 간편하게 데이터를 처리해 보세요!

개발 CSV 변환

FinArva AI 해커톤 2025: AI로 인도의 금융 유통 문제 해결

2025-05-01
FinArva AI 해커톤 2025: AI로 인도의 금융 유통 문제 해결

GroMo가 AWS의 지원을 받아 주최하는 FinArva AI 해커톤 2025는 AI와 제품 혁신을 활용하여 인도의 가장 어려운 금융 유통 문제를 해결하는 하이 스테이크스 경쟁입니다. 참가자들은 인도의 다음 10억 명의 사용자를 위한 지능형 솔루션을 설계하고, 독점적인 멘토링을 받고, 최고의 핀테크 리더에게 프레젠테이션을 하고, 100만 루피가 넘는 상금을 놓고 경쟁합니다. 학생, 전문가, AI 애호가를 위한 것으로, 3~5명의 팀이 권장됩니다. 승리 기준에는 문제 이해, 혁신, 비즈니스 영향, 효과적인 AI 통합, 사용 편의성이 포함됩니다.

개발 AI 해커톤

SerenityOS의 Ladybird 브라우저 엔진에서 Use-After-Free 취약점 악용

2025-05-01

SerenityOS 프로젝트의 Ladybird 브라우저 엔진의 LibJS JavaScript 엔진에서 Use-After-Free(UAF) 취약점이 발견되었습니다. 이 취약점은 인터프리터의 인수 버퍼를 부적절하게 관리한 데서 비롯되며, 공격자는 악의적인 프록시 함수 객체와 `[[Get]]` 핸들러를 사용하여 이 취약점을 트리거할 수 있습니다. 이 UAF를 악용하면 임의 메모리 읽기/쓰기가 가능해지고, 최종적으로 코드 실행(예: `/calc` 실행)으로 이어집니다. 이 취약점은 Fuzzilli 퍼저를 사용하여 발견되었으며, 메모리 누수 및 객체 위조를 포함한 일련의 단계를 통해 악용되었습니다.

개발

문자열 길이 제한의 함정

2025-04-30

이 글에서는 문자열 길이 제한의 복잡성을 자세히 다룹니다. 문자 인코딩(UTF-8, UTF-16, 유니코드 코드 포인트, 그래피미 클러스터)이 다르기 때문에 길이 계산 방법이 다양하며, 프런트엔드, 백엔드, 데이터베이스 등의 계층 간에 불일치가 발생하기 쉽고, 이로 인해 버그가 발생할 수 있습니다. 저자는 완벽하지는 않지만 NFC 정규화를 사용한 유니코드 코드 포인트 계산을 최상의 방법으로 제안합니다. 이 글에서는 그래피미 클러스터 계산, UTF-8 바이트 계산, UTF-16 코드 유닛 계산 등의 방법의 장단점을 살펴보고, 하이브리드 계산 방법의 예제 코드를 제공합니다.

오픈소스 랩(OSL), 25만 달러 확보 못하면 폐쇄 위기

2025-04-30
오픈소스 랩(OSL), 25만 달러 확보 못하면 폐쇄 위기

오레곤 주립대학교의 오픈소스 랩(OSL)이 심각한 자금 부족에 직면해 있습니다. 기업 기부금 감소와 대학 예산 삭감으로 인해 OSL은 2025년 5월 14일까지 25만 달러를 조달하지 못하면 폐쇄될 위기에 처해 있습니다. 이 자금은 직원과 학생 급여 및 운영비에 사용됩니다. OSL은 전 세계 500개 이상의 무료 오픈소스 프로젝트를 호스팅하고 있으며, 22년 동안 130명 이상의 학생을 육성해 왔습니다. 또한 데이터 센터 폐기라는 과제에도 직면해 있으며, 새로운 장소를 확보하는 것도 매우 어려운 상황입니다.

개발 대학교

JetBrains, AI 어시스턴트 부정적 리뷰 삭제로 논란

2025-04-30
JetBrains, AI 어시스턴트 부정적 리뷰 삭제로 논란

JetBrains의 AI 어시스턴트 플러그인은 2200만 회 이상 다운로드되었지만, 평점은 겨우 2.3점으로 낮습니다. 최근 사용자들은 부정적 리뷰가 삭제된 것을 발견했고, JetBrains는 해당 리뷰들이 해결된 문제에 대한 것이거나 정책 위반이었기 때문이라고 설명했습니다. 하지만 이러한 조치는 반발을 불러일으켰고, 사용자들은 JetBrains가 서드파티 모델에 대한 제한적인 지원, 잦은 지연, 핵심 기능의 클라우드 서비스 의존성, 프로젝트 유형 간의 불일치하는 사용자 경험, 부족한 문서 등 AI 어시스턴트의 여러 문제점을 은폐하려 한다고 비난하고 있습니다. AI 어시스턴트의 무단 자동 설치도 큰 문제입니다. JetBrains는 새로운 AI 에이전트 Junie와 무료 플랜을 도입했지만, 높은 비용과 경쟁사와 달리 독립적인 클라우드 비즈니스가 없다는 점이 여전히 과제로 남아 있습니다.

CVE-2025-21756: vsock을 통한 Linux 커널 취약점 공격

2025-04-30

연구원이 KernelCTF 제출물에서 vsock을 통해 권한 상승을 허용하는 간단한 Linux 커널 취약점 CVE-2025-21756을 발견했습니다. 이 공격의 핵심은 몇 줄의 코드로 수정된 Use After Free(UAF) 문제입니다. 연구원은 패치를 분석하고, 취약점을 파악하고, 크로스 캐시 공격을 시도했습니다. 하지만 AppArmor에 의해 직접적인 공격은 차단되었습니다. 그래서 연구원은 교묘하게 vsock_diag_dump를 사이드 채널로 활용하여 kASLR을 우회하고 커널 주소를 유출했습니다. 마지막으로, 신중하게 설계된 ROP 체인을 사용하여 `commit_creds` 함수를 호출하고 root 권한을 획득했습니다. 이 과정은 어려웠지만, 귀중한 커널 보안 관련 지식을 얻을 수 있었습니다.

개발

NotebookLM, 다국어 오디오 요약 기능 제공 시작

2025-04-30
NotebookLM, 다국어 오디오 요약 기능 제공 시작

NotebookLM이 오디오 요약 기능을 업데이트하여 사용자가 원하는 출력 언어를 선택할 수 있게 되었습니다. 포르투갈어 다큐멘터리, 스페인어 연구 논문, 영어 학습 보고서 등 어떤 언어의 콘텐츠를 업로드하더라도 선택한 언어로 오디오 요약을 생성할 수 있습니다. 이를 통해 다국어 콘텐츠 또는 학습 자료 제작이 용이해집니다. 예를 들어, 교사는 아마존 열대우림에 대한 자료를 여러 언어로 공유할 수 있으며, 학생들은 이를 업로드하여 자신들의 모국어로 오디오 요약을 생성할 수 있습니다. 이렇게 하면 언어 장벽을 제거하고 정보 접근성을 높일 수 있습니다.

ART: 최소한의 코드 변경으로 LLM 성능을 극대화하는 강화 학습 라이브러리

2025-04-30
ART: 최소한의 코드 변경으로 LLM 성능을 극대화하는 강화 학습 라이브러리

Agent Reinforcement Trainer (ART)는 에이전트 워크플로우에서 대규모 언어 모델(LLM)의 성능을 향상시키기 위해 설계된 오픈소스 강화 학습 라이브러리입니다. 강력한 GRPO 알고리즘을 사용하여 모델 자체의 경험으로부터 학습합니다. 대부분의 RL 라이브러리와 달리 ART는 기존 코드베이스에 원활하게 통합되며 RL 학습 루프의 복잡성을 백엔드로 오프로드합니다. ART는 클라이언트(코드와 상호 작용)와 서버(추론 및 학습 담당)로 구성됩니다. 학습 루프에는 추론(데이터 수집 및 보상 할당)과 학습(GRPO를 사용하여 모델 학습 및 LoRA 업데이트)이 포함됩니다. ART는 vLLM/HuggingFace Transformers와 호환되는 대부분의 인과 언어 모델을 지원합니다. 현재 알파 버전이며, 기여를 환영합니다.

개발

BSSG: 10년 만에 Bash 정적 사이트 생성기 오픈소스로 공개

2025-04-30
BSSG: 10년 만에 Bash 정적 사이트 생성기 오픈소스로 공개

저자는 90년대 후반부터 개인 웹사이트를 운영해 왔으며, HTML 수작업부터 WYSIWYG 에디터, WordPress와 같은 동적 CMS까지 다양한 웹사이트 제작 방법을 경험했습니다. 동적 CMS의 지속적인 보안 업데이트와 유지보수에 대한 불만으로 정적 사이트 생성기로 전환했습니다. bashblog, Pelican, Nikola(Nikola용 Docker 컨테이너도 제작)를 사용해 본 후, 2015년에 자체 Bash 정적 사이트 생성기(BSSG)를 개발했습니다. BSSG는 시간이 지남에 따라 발전하여 테마, 아카이브, 태그 등의 기능이 추가되었습니다. 장점은 경량성, 이식성, 고성능, 높은 접근성 점수, Markdown 지원, 다양한 테마입니다. 코드의 불완전성을 인지하고 있지만, 저자는 BSSG를 오픈소스로 공개하여 동적 CMS 유지보수에 지친 사람들에게 도움이 되기를 바랍니다.

개발

Raven: OCaml을 위한 새로운 머신러닝 생태계

2025-04-30
Raven: OCaml을 위한 새로운 머신러닝 생태계

Raven은 OCaml에 머신러닝과 데이터 과학을 제공하는 포괄적인 생태계입니다. NumPy(Ndarray 사용), Jupyter(Quill 사용), JAX(Rune 사용)과 같은 인기 있는 Python 도구를 반영한 라이브러리를 제공하며, OCaml의 형식 안전성과 성능을 활용하면서 Python과 같은 사용 편의성을 목표로 합니다. 현재 프리알파 버전이지만, 수치 계산, 시각화(Hugin) 등 다양한 도구를 갖추고 있으며, 보다 안전하고 빠른 언어를 찾는 데이터 과학자에게 매력적인 대안이 될 것입니다.

개발

거절의 기술: 세련된 거절을 위한 경량 API

2025-04-30
거절의 기술: 세련된 거절을 위한 경량 API

정중하게 거절하는 데 어려움을 겪고 계십니까? 이 경량 API인 "No as a Service"는 모든 상황에 맞는 수천 가지의 창의적이고 유머러스한 거절 이유를 제공합니다. 앱, 봇, 랜딩 페이지 등에 쉽게 통합할 수 있으며, 재치 있는 거절 편지를 작성하는 데에도 도움이 됩니다. 오픈소스 코드는 쉽게 실행할 수 있으며, 세련되게 "거절"하는 데 재미있고 효율적인 도구입니다.

개발 거절 사유

arXivLabs: 커뮤니티와 협력하여 arXiv의 새로운 기능 개발

2025-04-30
arXivLabs: 커뮤니티와 협력하여 arXiv의 새로운 기능 개발

arXivLabs는 참여자들이 arXiv의 새로운 기능을 웹사이트에서 직접 개발하고 공유할 수 있는 실험적인 프레임워크입니다. 참여자들은 arXiv의 개방성, 커뮤니티, 우수성, 사용자 데이터 개인 정보 보호라는 가치를 공유합니다. arXiv 커뮤니티를 개선할 아이디어가 있으신가요? arXivLabs에 대해 자세히 알아보세요!

개발

Talanoa: 10년 만의 구상이 마침내 현실로

2025-04-30
Talanoa: 10년 만의 구상이 마침내 현실로

웹 엔지니어 John Martin은 2014년에 대화처럼 이메일을 처리할 수 있는 애플리케이션 Talanoa의 아이디어를 떠올렸습니다. 매년 이 아이디어를 검토하고, 시장에 유사한 제품이 없다는 것을 깨달은 후 마침내 출시했습니다. 이 이야기는 비전을 실현하고 시장의 격차를 메우는 데 필요한 헌신과 인내를 보여줍니다.

개발

dataframely: Polars 기반 데이터프레임 검증 라이브러리

2025-04-30

QuantCo는 레거시 코드베이스를 현대화하는 과정에서 데이터프레임 처리의 심각한 결함, 즉 검증 부족을 발견했습니다. 성능 향상을 위해 pandas에서 Polars로 마이그레이션하면서 이 문제가 두드러졌습니다. pandera나 patito와 같은 기존 라이브러리는 부족한 것으로 판명되었습니다. 이를 해결하기 위해, 그들은 선언적 데이터프레임 검증을 가능하게 하는 Polars 기반 라이브러리인 dataframely를 개발했습니다. dataframely는 스키마 정의, 데이터프레임 내용 검증, 데이터프레임 간 검증, 소프트 검증을 지원하여 파이프라인의 안정성과 가독성을 크게 향상시킵니다. 이미 여러 팀과 프로젝트에서 사용되고 있습니다.

HP webOS 'Eel': 세상에 나오지 못한 혁신적인 OS

2025-04-30
HP webOS 'Eel': 세상에 나오지 못한 혁신적인 OS

HP의 태블릿과 휴대폰 계획 대부분이 실망스러웠던 반면, 소프트웨어 팀은 진정으로 혁신적인 디자인을 개발하고 있었습니다. 코드명 'Eel'인 webOS의 다음 주요 버전은 원래 Palm Pre에서 도입된 '카드' 메타포어를 확장하는 것을 목표로 했습니다. '카드 스택'과 '반응형 패널'을 결합하여 사용자는 왼쪽에 새로 분리된 카드로 링크를 열고, 이를 슬라이드하거나 '잘라내어' 다른 스택으로 이동할 수 있었습니다. 이를 통해 창 크기와 그룹화가 유연해졌으며, 스마트폰과 태블릿 모두에서 잘 작동했습니다. 생산성 향상을 위한 혁신적인 시도였지만, 결국 프로젝트는 잠재력을 완전히 발휘하지 못했습니다.

개발

미션 임파서블: 현실 세계에서 AI 에이전트 관리하기

2025-04-30
미션 임파서블: 현실 세계에서 AI 에이전트 관리하기

이 글에서는 소프트웨어 개발 등 다양한 분야에서 AI 에이전트를 효과적으로 제어하는 데 필요한 전략과 어려움을 다룹니다. 저자는 경험에서 얻은 교훈을 공유하며, AI 에이전트가 수행할 수 있는 작업의 맥락을 신중하게 계획하고 제한하는 것이 중요함을 강조합니다. 도구 선택, 작업 계획, 계획 수립 및 개정, 계획 테스트, 더 큰 문제 발견 등의 기법을 자세히 설명하고, 규칙, 성능 보상, 모델 선택, 비용 관리 등 중요한 측면도 다룹니다. 또한 Cursor와 같은 도구를 사용하여 재사용 가능한 계획을 만들고, 계획을 단계적으로 실행하며, 지속적으로 개정 및 테스트하여 AI 에이전트의 신뢰성을 높이고 효율적인 소프트웨어 개발을 달성하는 방법을 자세히 설명합니다.

개발 계획 관리

DuckDB를 사용한 Hacker News 전체 데이터셋 분석

2025-04-30
DuckDB를 사용한 Hacker News 전체 데이터셋 분석

저자는 사이트에 게시된 모든 것을 포함하는 20GB JSON 파일인 Hacker News 전체 데이터셋을 다운로드하여 DuckDB 데이터베이스를 사용하여 분석했습니다. 이 글에서는 다운로드 과정과 특정 프로그래밍 언어(Python, JavaScript, Java, Ruby, Rust) 언급 빈도의 12주 이동 평균을 계산하는 SQL 쿼리에 대해 자세히 설명합니다. 저자는 DuckDB의 사용 편의성과 속도를 칭찬하며, 데이터셋으로 LLM 모델을 훈련하는 등 미래 가능성을 유머러스하게 제시합니다.

개발

Excel에서 Linux 실행하기: 재미있는 해킹

2025-04-30
Excel에서 Linux 실행하기: 재미있는 해킹

개발자가 Microsoft Excel에서 Linux 시스템을 성공적으로 실행했습니다! mini-rv32ima라는 경량 에뮬레이터를 사용하여 DLL로 컴파일하고 VBA 매크로를 통해 호출함으로써 Excel 셀에 Linux 출력을 직접 표시하는 데 성공했습니다. 프로젝트에는 버그가 있음을 인정했고, 개발자는 VBA 또는 Excel 수식으로 에뮬레이터를 다시 작성하는 대신 외부 DLL을 사용했다고 인정했지만, 이는 독창성과 프로그래밍 기술을 보여주는 창의적이고 재미있는 실험입니다.

개발

자동 스파스 미분: 고차원 헤시안 행렬 제어

2025-04-30

고차원 헤시안 행렬 계산은 기계 학습에서 주요 병목 현상입니다. 이 글에서는 행렬의 스파스성을 활용하여 헤시안 행렬과 자코비안 행렬 계산을 가속화하는 기법인 자동 스파스 미분(ASD)을 소개합니다. ASD는 스파스 패턴 감지와 행렬 컬러링을 사용하여 여러 구조적으로 직교하는 열(또는 행)을 단일 벡터로 결합하여 계산함으로써 계산 비용과 메모리 요구 사항을 줄입니다. 이 글에서는 ASD의 작동 방식을 자세히 설명하고, 순방향 및 역방향 자동 미분, 스파스 행렬 표현, 컬러링 알고리즘 등을 다룹니다. Julia 코드 예시를 통해 적용 및 성능상의 이점을 보여주고, Newton 방법과 같은 최적화 알고리즘처럼 스파스 자코비안 또는 헤시안 행렬 계산이 필요한 애플리케이션에서 ASD가 상당한 이점을 제공한다는 결론을 내립니다.

Linux의 PATH: 쉘의 비밀

2025-04-29

Linux가 실행하는 명령어를 어떻게 찾는지 궁금해한 적이 있습니까? 답은 커널이 아니라 쉘에 의존한다는 것입니다! 이 기사에서는 PATH 환경 변수의 메커니즘을 자세히 살펴보고, dash와 같은 쉘이 `padvance` 함수를 사용하여 PATH에서 실행 파일을 찾는 방법과 커널의 `execve` 시스템 호출이 실제로 전체 경로를 받는 방법을 밝힙니다. Python, Go, Rust와 같은 프로그래밍 언어도 서브 프로세스 라이브러리에 자체 PATH 검색을 구현하며, 궁극적으로 `execvp`와 같은 기본 함수에 의존합니다. 이 기사에서는 shebang이 절대 경로를 필요로 하는 이유와 `/usr/bin/env`의 영리한 역할에 대해서도 설명합니다.

개발

Amazon RDS for PostgreSQL 멀티 AZ 클러스터, 스냅샷 격리 실패

2025-04-29

Jepsen의 테스트 결과, Amazon RDS for PostgreSQL 멀티 AZ 클러스터가 스냅샷 격리를 완벽하게 보장하지 않는다는 사실이 밝혀졌습니다. 스냅샷 격리 규칙을 위반하는 G-비인접 사이클과 같은 이상 현상이 관찰되었습니다. 여기에는 Long Fork가 포함되어 있으며, RDS for PostgreSQL이 다소 약한 병렬 스냅샷 격리를 제공할 가능성을 시사합니다. 즉, 고병렬 환경에서 읽기 트랜잭션이 실행 순서에 대해 의견이 다를 수 있음을 의미합니다. 사용자는 트랜잭션 구조에 유의하고, Long Fork를 피하거나, 스냅샷 격리를 복구하기 위해 쓰기 엔드포인트만 사용해야 합니다.

낡은 킨들을 가족 대시보드로 변신시키기

2025-04-29

딸이 학교에 계속 지각하는 문제로 고민하던 아버지가, 사용하지 않는 킨들을 가족 정보 대시보드로 개조했습니다. 킨들을 탈옥하고 스크립트를 작성하여 백엔드 API를 구축함으로써 실시간 날씨, 대중교통 정보, 딸의 학교 시간표 등을 표시할 수 있도록 했습니다. 백엔드에는 Cloudflare Workers, Hono JS 등을 사용했고, 이미지 형식 변환과 같은 문제도 기발하게 해결했습니다. 그 결과, 실용적이고 개인 맞춤형 정보 표시 장치가 완성되었습니다.

Zip 폭탄으로 악의적인 봇과 싸우기

2025-04-29
Zip 폭탄으로 악의적인 봇과 싸우기

끊임없는 악의적인 봇 공격에 직면하고 계십니까? 웹사이트 소유자가 그의 독창적인 해결책을 공유합니다. 바로 Zip 폭탄입니다. 이 작은 압축 파일은 거대한 파일로 확장되어 공격자의 리소스를 압도합니다. 악의적인 요청을 감지함으로써 저자는 압축된 Zip 폭탄을 제공하여 여러 공격을 효과적으로 격퇴하고 그의 웹사이트를 보호합니다. 완벽한 것은 아니지만, 정교하지 않은 봇넷에 대한 놀라울 정도로 효과적인 방어책입니다.

개발 Zip 폭탄
1 2 100 101 102 104 106 107 108 214 215