테스트 환경에서 사용하기 너무 어렵거나 느린 것에 의존하는 코드를 테스트하고 싶을 때는, 의존성 대신 테스트 더블을 사용하세요.
은하영웅전설, 두 영웅의 리더십 비교: 라인하르트 vs 양 웬리
소설 ‘은하영웅전설’의 두 주인공, 은하제국의 ‘상승의 천재’ 라인하르트 폰 로엔그람과 자유행성동맹의 ‘불패의 마술사’ 양 웬리는 시대를 대표하는 위대한 전략가이자 리더이지만, 그들의 리더십 스타일은 극명한 대조를 이룹니다. 두 영웅의 리더십을 장점과 단점으로 나누어 비교하면 다음과 같습니다.
번역글: 포커 불리(bully)를 물리치려면 이 한 가지 비밀만 알면 됩니다
불리는 포커 플레이어 중 흔한 유형입니다. 테이블에 너무 오래 앉아있으면 반드시 한 명쯤은 마주치게 됩니다. 그들은 무모하게 베팅하고 레이즈합니다. 그들과 맞서 플레이하는 것은 마치 날뛰는 야생마를 타는 것처럼 무서울 수 있습니다.
번역글: 포커 배리언스 이해는 하향세에 대처하는 데 도움이 될 것입니다
배리언스는 개별 플레이어가 운에 따라 얼마나 많이 이기거나 지는지를 설명합니다. 동전을 100번 던지면 50번 이길 것으로 예상합니다. 54번 이기면 긍정적인 배리언스을 경험한 것입니다. 46번 이기면 부정적인 배리언스을 경험한 것입니다.
번역글: 포커에서 넛(Nuts)이란 무엇인가? 의미 + 전략 가이드
포커에서 넛이란 무엇일까요? 포커에서 넛란 핸드의 어떤 단계에서든 가능한 최고의 카드를 의미합니다. 리버에서 넛을 가진 플레이어는 핸드를 폴드하거나 잠들지 않는 한 핸드를 잃을 수 없습니다.
TotT: 싱글턴을 피하기 위한 의존성 주입 사용하기
싱글턴을 사용하는 코드를 테스트하기는 어렵습니다. 일반적으로 테스트하려는 코드는 싱글턴 인스턴스와 강력하게 결합되어 있습니다. 싱글턴 객체가 종종 정적 이니셜라이저나 정적 메서드에서 생성되기 때문에 싱글턴 객체의 생성을 제어할 수 없습니다. 결과적으로 싱글턴 인스턴스의 동작을 목킹(mocking)할 수도 없습니다.
번역글: 판타지 야구 포인트 리그 전략: 야후의 기본 설정에 대해 알아야 할 모든 것
많은 판타지 야구 작가들이 기사를 쓸 때 주로 로티서리 (rotisserie) 형식을 생각하지만, 포인트 리그 (H2H points) 는 야후를 포함한 많은 인기 사이트에서 기본 설정이 되었습니다. 그리고 로토 형식과 달리 포인트 리그 채점 시스템은 사이트마다 크게 다릅니다.
번역글: PLO8 (오마하 하이로우) 초보자를 위한 규칙
포커는 텍사스 홀덤만이 전부가 아닙니다. 일부 플레이어는 액션을 찾아 다른 분야로 가기도 합니다. 예를 들어, 팟 리밋 오마하와 오마하 하이/로입니다. 그렇다면 가장 강한 (하이) 조합뿐만 아니라 가장 약한 (로우) 조합도 고려되는 포커 게임은 무엇일까요? 짐작하셨겠지만, 이 자료에서는 PLO8 (오마하 하이로우) 의 규칙과 그 특징에 대해 더 자세히 알려드릴 것입니다.
TotT: 시간은 무작위
메서드의 입력값을 명확하게 식별할 수 없을 때 어떻게 제대로 테스트할 수 있을까요?
TotT: 너무 많은 테스트
영화 아마데우스에서 오스트리아 황제는 모차르트의 음악에 “음표가 너무 많다”고 비판합니다. 하나의 기능을 테스트하는 데 “너무 많은” 테스트는 몇 개일까요?
번역글: 모든 것을 공격으로 해석하는 사람과 대화하기
어떤 말이나 제안이라도 상대방을 화나게 할까 봐 조심스러웠던 적이 있나요? 우리는 때때로 우리가 하는 모든 말을 비난으로 해석하는 사람을 불쾌하게 하거나, 우리가 의도한 대화의 요점을 놓치게 하는 특정 단어를 사용할 수도 있습니다. 대화가 언제 터질지 모르는 지뢰밭처럼 느껴질 때 믿을 수 없을 정도로 어렵고 심지어 좌절감을 느끼기도 합니다. 그렇다면 모든 것을 공격으로 해석하는 방어적인 사람과 긴장을 고조시키지 않고 어떻게 대화할 수 있을까요?
변역글: 갈등 회피가 종종 갈등을 유발할 수 있다
갈등 관리는 개발하기 어려운 기술이지만, 관리자와 리더가 감정적으로나 직업적으로 이 기술을 습득하는 것이 필수적입니다. 갈등은 나쁜 것이 아닙니다!
TotT: 스트룹 효과
스트룹 효과는 대략적으로 레이블(이 경우 단어)이 내용(색깔)과 같은 영역에 있고 의미가 충돌할 때, 레이블이 내용을 이해하는 능력에 방해가 된다는 것을 의미합니다.
TotT: 스텁이 단위 테스트 속도를 높여줍니다
Michael Feathers는 좋은 단위 테스트의 특징을 ‘빠르게 실행되고 문제 위치를 파악하는 데 도움이 된다’ 고 정의합니다. 코드에 데이터베이스 액세스, 다른 서버와의 통신, 시간 의존성 등이 있을 때는 이를 달성하기 어렵습니다.
번역글: ExecutorService invokeAll 과 가상 스레드 사용하기
invokeAll 은 ExecutorService 의 메서드로, 여러 제출된 작업을 동시에 시작합니다. ExecutorService 는 스레드 풀에서 플랫폼 스레드를 사용하여 제출된 작업을 실행합니다. 이 비싸고 리소스 집약적인 플랫폼 스레드를 사용하는 대신, 가상 스레드를 사용하여 ExecutorService 에 제출된 작업을 실행할 수도 있습니다. 이 글에서는 invokeAll 메서드를 가상 스레드 (virtual threads), 구조화된 동시성 (structured concurrency) 및 플랫폼 스레드 (platform threads) 와 함께 구현하는 모든 방법을 다룰 것입니다.
번역글: PLO (팟 리밋 오마하) 에서 효과적인 블러핑
판돈은 높고 심장은 시계 초침 소리에 맞춰 뛰는 듯 격렬하게 고동칩니다. 팽팽한 침묵은 섞이는 카드의 부드러운 속삭임과 녹색 펠트 주변의 작은 대화 소리에 의해서만 깨집니다. 챙 넓은 모자 그림자 아래의 강렬한 시선, 빨라진 숨소리, 입술의 경련 – 이것들이 상대방의 핸드 강도를 측정할 수 있는 유일한 지표입니다. 이제 스스로에게 물어보세요: 이 모든 것이 연기일까요, 아니면 냉혹한 진실일까요? 팟 리밋 오마하 (PLO)의 세계에 오신 것을 환영합니다. 이곳에서는 블러핑이 과학만큼이나 예술이며, 효과적으로 블러핑하는 방법을 아는 것이 승자가 되느냐 패자가 되느냐의 차이를 의미할 수 있습니다.
번역글: 더 현명한 질문을 하는 기술
이 다섯 가지 기술은 훌륭한 전략적 의사결정을 이끌어낼 수 있습니다.
밈 소개: 홀덤에서 오마하로 종목전환
이 밈(meme)은 텍사스 홀덤에서 팟 리밋 오마하(Pot-Limit Omaha, PLO)로 막 입문한 플레이어들의 경험을 아주 재치있게 표현한 것입니다. 자세히 설명해 드릴게요.
TotT: 화장실에서 테스팅 (Testing on the Toilet) 소개
저희는 테스팅에 대한 열정을 전 세계에 전파하고, 여러분과 여러분의 회사에 이러한 중요한 트릭과 기술을 재미있고 쉽게 교육하는 방법을 제공하기 위해 이 비밀 병기를 전 세계와 공유하기로 결정했습니다.
번역글: PLO (팟 리밋 오마하) 스타팅 핸드: 반드시 고려해야 할 3가지
PLO (팟 리밋 오마하)는 특히 NLH (노 리밋 홀덤)에 비해 매우 역동적인 게임입니다. NLH 에는 1,326가지의 가능한 스타팅 핸드 조합이 있는데, 이는 엄청나게 많게 들릴 수 있지만, PLO 에는 무려 270,725가지의 스타팅 핸드 조합이 있습니다.