read: fail

블루스카이와 소셜 미디어에 대한 생각

최근 블루스카이에서 활동이 증가하면서 저자는 더 많은 게시물을 올리기 시작했습니다. 트위터의 중요성은 감소했으며, 링크드인에서는 불편한 사용자 경험에도 불구하고 많은 반응을 얻고 있습니다. 소셜 미디어는 다양한 플랫폼으로 분산되어 있으며, 저자는 오픈 프로토콜의 진전에 희망을 걸고 있습니다.

모바일 앱에서 스트랭글러 피그 사용 결과 평가

모바일 앱의 복잡성이 증가함에 따라, 전통적인 '처음부터 다시 쓰기' 방식은 점점 더 어려워지고 있습니다. 이에 대한 해결책으로 스트랭글러 피그 패턴을 도입하여 기존 앱 내에 React Native 마이크로 앱을 점진적으로 통합하는 방식이 제안되었습니다. 이 접근법은 전체 재작성에 비해 시간과 비용을 대폭 줄이면서 앱의 기능을 개선할 수 있는 유망한 전략으로 평가되었습니다.

스트랭글러 피그를 활용한 모바일 앱의 점진적 현대화

스트랭글러 피그 패턴을 이용해 기존의 복잡한 모바일 앱을 점진적으로 현대화하는 방법을 소개합니다. 이 방법은 전체적인 재작성의 위험을 피하면서, 모듈형 마이크로-앱 아키텍처를 통해 앱의 일부분을 새롭게 교체해 나가는 전략입니다. 이 과정에서 React Native 브리지와 회귀 테스팅 방법도 다룹니다.

모바일 앱의 점진적 현대화를 위한 스트랭글러 피그 패턴

스트랭글러 피그 패턴을 활용하여 점진적으로 구식 모바일 애플리케이션을 현대화하는 방법에 대해 설명합니다. 이 패턴은 기존 시스템 주변에 새 시스템을 구축하면서 점진적으로 교체하는 방식을 포함합니다. 이 방법은 비용, 기간, 위험을 줄이면서 사용자 경험을 유지할 수 있게 해줍니다.

Book Overflow 팟캐스트 인터뷰: 리팩토링에 대해

최근 Book Overflow 팟캐스트에서 리팩토링에 대한 인터뷰를 진행했습니다. 이 인터뷰에서는 코드를 더 깔끔하고 효율적으로 만드는 방법에 대해 논의했습니다. 리팩토링의 중요성과 그 과정에서 발생할 수 있는 오류에 대해서도 언급되었습니다.

GenAI를 활용한 능력 지도 구축 및 레거시 시스템 변환

GenAI는 레거시 시스템의 이해와 변환을 돕는데 큰 역할을 합니다. 이 기술은 코드를 데이터로 처리하고, 능력 지도를 생성하여 시스템의 현대화를 지원합니다. 또한, 코드의 이해도를 높이고, 변환 과정에서의 리스크를 최소화하는 데에도 기여할 수 있습니다.

레거시 시스템에서 저수준 세부 정보 및 고수준 설명 추출을 위한 GenAI 활용

ChatGPT 출시 이후, GenAI는 소프트웨어 엔지니어링 분야에서 빠르게 실험되고 채택되고 있습니다. 이 기술은 레거시 시스템의 복잡성에 대처하고, 코드를 데이터로 처리하여 다양한 추상화 수준에서 분석을 가능하게 하는 CodeConcise라는 도구를 개발했습니다.

GenAI를 활용한 레거시 시스템 현대화

ChatGPT 출시 이후 GenAI는 소프트웨어 엔지니어링 분야에서 빠르게 실험되고 도입되고 있습니다. 특히, 개발자들이 코드를 더 빠르게 작성할 수 있도록 돕는 GenAI 어시스턴트의 활용이 두드러집니다. 이에 대응하여, CodeConcise라는 내부 현대화 가속기가 개발되었으며, 이는 LLM을 사용하여 레거시 시스템의 복잡성을 해결하는 데 중점을 두고 있습니다.

데이터 제품을 관리하기 위한 피트니스 함수 사용

데이터 메쉬의 핵심 아이디어는 분석 데이터의 소유권을 분산시켜 각 도메인에 맞는 자율적인 팀이 데이터 제품을 관리하게 하는 것입니다. 이를 통해 팀은 비즈니스 요구사항의 변화에 빠르게 대응하고, 데이터 기반 의사결정에 도메인 지식을 적용할 수 있습니다. 또한, '아키텍처 피트니스 함수'라는 개념을 도입하여 데이터 제품이 설계 목표에 부합하는지 평가하고, 거버넌스 문제를 사전에 해결할 수 있도록 합니다.

블리키: 사이클 타임

마틴 파울러가 작성한 이 글에서는 아이디어에서 제품화까지 걸리는 시간인 사이클 타임의 개념을 설명합니다. 애자일 소프트웨어 개발에서는 작은 기능을 신속하게 구현하고 개발 과정에서의 지연을 줄여 사이클 타임을 최소화하는 데 중점을 둡니다. 또한, 사이클 타임을 다양하게 정의하고 측정하는 방법을 제안하여 개발 과정의 효율을 높일 수 있는 방법을 제시합니다.

현대화를 위한 '질식 덩굴' 비유 업데이트

20년 전, 한 작가가 레거시 시스템을 점진적으로 대체하는 방법으로 '질식 덩굴' 식물을 흥미로운 비유로 소개했습니다. 이 비유는 시간이 지남에 따라 인기를 끌었고, 이제 작가는 현대화를 위한 질식 덩굴 접근법을 성공적으로 적용하기 위한 핵심 활동에 초점을 맞춰 원본 페이지를 업데이트하기로 결정했습니다.

AI를 활용한 '레거시' 코드베이스 온보딩

AI 도구는 도메인 용어를 이해하고 관련 코드를 찾는 데 도움을 줄 수 있지만, 개발 환경 설정이나 테스트되지 않은 코드에 대한 유닛 테스트 생성에는 어려움이 있습니다. 자동 컨텍스트 조정이 미지의 애플리케이션에 대한 온보딩에 필수적입니다.

엔터프라이즈 애플리케이션 아키텍처 패턴 카탈로그 업데이트

엔터프라이즈 애플리케이션 아키텍처 패턴의 카탈로그 페이지가 개선되었습니다. 주요 변경 사항으로는 패턴의 의도를 메인 페이지에 포함시키고, O'Reilly 웹사이트의 책 섹션에 대한 직접 링크를 추가하는 것이 있습니다. 이러한 개선을 통해 카탈로그의 발견성과 사용성이 향상되었습니다.

AI와 알고리즘 제한 대신 설명 가능성을 높여야 할 필요성

AI 도구의 증가하는 사용은 소셜 미디어 피드와 보험 가격 책정과 같은 사람들의 삶에 영향을 미치는 소프트웨어 결정에 대한 우려를 낳고 있습니다. 설명 가능한 알고리즘과 AI의 필요성을 강조하며, 소프트웨어가 내리는 결정은 이해할 수 있어야 하며, 그 이유를 알 수 있어야 한다고 주장합니다.

서버 호출을 테스트하는 HTML 생성

HTML 생성 테스트는 잘 구성된 HTML을 확인하고, 구조와 내용을 검증하며, 사용자 상호작용을 시뮬레이션합니다. 이 과정에서 CSS 선택자, 무헤드 브라우저를 사용하고, HTML을 캐노니컬 문자열로 변환하는 방법도 소개되었습니다. 이러한 방법들은 서버 사이드에서 렌더링된 HTML의 구조적 및 행동적 측면을 철저히 테스트할 수 있게 해줍니다.

생성된 HTML의 동작 테스트하기

이 기사는 서버 측에서 렌더링된 HTML의 부상과 이를 테스트하는 방법에 대해 설명합니다. HTML 구조와 동작을 테스트하기 위한 다양한 단계를 소개하며, Playwright와 같은 헤드리스 브라우저의 사용을 포함합니다. 또한, 사용자 상호작용을 테스트하기 위한 고유 식별자 추가의 중요성을 강조합니다.

HTML 템플릿 테스트의 파라미터화

HTML 템플릿을 테스트하는 방법에 대해 알아보세요. 잘 구성된 HTML 확인부터 파라미터화된 테스트 접근법까지, 템플릿의 HTML 출력을 철저히 테스트하는 것의 중요성과 테스트 인프라에 투자하여 테스트 코드를 명확하고 표현력 있게 유지하는 방법을 배울 수 있습니다.

싱글 페이지 애플리케이션에서의 프리페칭

이 기사는 React를 예로 들며 프론트엔드 애플리케이션에서 데이터를 가져오는 공통 문제와 패턴을 다룹니다. 주요 내용으로는 비동기 상태 핸들러, 폴백 마크업, 병렬 데이터 패칭, 코드 분할, 그리고 프리페칭이 있습니다. 이러한 패턴들은 React뿐만 아니라 다양한 프론트엔드 프레임워크에 적용 가능합니다.

싱글 페이지 애플리케이션에서의 코드 분할

이 글에서는 비동기 상태 처리, 병렬 데이터 패칭, 폴백 마크업, 그리고 코드 분할을 통해 애플리케이션의 성능을 개선하는 방법을 소개합니다. 특히, 대규모 애플리케이션의 초기 로드 시간과 성능 향상에 초점을 맞추며, 사용자 경험을 고려하는 것의 중요성을 강조합니다.

발자국 사용법에 대한 짧은 노트

발자국을 사용하는 것을 꺼려했던 저자는 오바마의 2008년 캠페인 기술 작업에 대한 기사를 작성하면서 발자국을 사용하면 본문을 더 일관성 있게 만들 수 있다는 것을 발견했습니다. 이제 저자는 기사의 끝으로 스크롤할 필요 없이 해당 단락 아래에 발자국 텍스트를 유지하는 새로운 방식을 선호합니다.