
배경스펙은 comma separated multi exact search를 구현하는 것이었습니다.(쉽게 말해 BRCA1,BRCA2,TP53,... 이런 식으로 복사 붙여넣기 하면, 해당 유전자들을 한 번에 검색하는 기능입니다.) 그런데 피처 개발 마무리 하루 전, 이런 피드백이 들어왔습니다. “제일 유명한 유방암 유발 유전자인 BRCA 검색했을 때 결과가 안 나오는 건 별로네요.” 브라카 같은 대표적인 변이 유발 유전자가 빠지면 사용자 입장에선 이런 기본도 안된 녀석!이라고 생각할 수 있겠습니다.정확한 유전자명인 BRCA1, BRCA2로 검색해야 나오는 exact match로 기획되어 있었습니다.개선 가즈아때문에 prefix search로 개선하게 되었습니다. 이걸 쓰는 사람들은 보통 검색창에 다수..
들어가며거래소 기존 레거시는 각각 store마다 공통 state가 복제되어 있었다...이를 개선하기 위해 여러 개의 store에서 공통으로 사용하는 state들(현재 코인, 현재 거래소 타입(선물/현물))을 한 곳(mainStore)에서 중앙 관리 처리했다.최대한 라이브러리 의존성 줄여서 개발했지만 공통 state들과 웹소켓에서 받는 정보들은 필연적으로 전역 상태로 관리해야 했다.그런데 비교적 복잡한 작업인 거래소 코인 변경의 경우 MobX store 라이브러리에 종속된 버그가 생겼다.문제 상황MainStore에서 심볼을 변경하고, 그 다음에 WebsocketManager에서 새로운 심볼에 대한 웹소켓 구독을 해야 하는 상황이었다.// 비즈니스 로직을 덜어낸 예시 코드class MainStore { @..

갑자기 수요일에 문자가 왔다.토스 당근 컨퍼런스 추첨 죄다 떨구더니 이거 붙으려고 그랬구나!! poe2도 해볼 수 있었는데 한글 번역도 깔끔했고 기존 Poe1에서 불편했던 부분이 ui적으로 많이 개선되었다고 느낌한글 폰트도 어색하지 않게 잘 적용한 듯wasd로 움직이게 변경되었는데 생각보다 조작감도 괜찮았고 그래픽도 상당히 전작보다 발전한 게 보임. 갓겜이다 갓겜!! 기존 유저들 만든 서드파티로 제공하던 기능을 대부분 인게임에 구현했다고 했음. pob가 필요 없을수도 있을듯서드파티들이 개발하는데 많은 도움이 되었다 하셨는데 당사자들 행복사 하실듯 총괄 디렉터 조나단 님 영접했다. 용안에서 빛이 납니다죽기 전에 그라인딩기어게임즈에서 일해보고 싶다. 자기 프로덕트에 자부심 넘치시고 넘 멋지더라 미니게임하고 ..

우리 거래소 프로덕트는 pretendard font를 메인으로 사용한다.pretendard는 숫자의 가로길이가 가변적인 폰트이다.때문에 아래 그림과 같은 문제가 발생한다. 이를 보고 디자이너님과 해결방안에 대해 이야기 나누어 보았다.가변폭 pretendard를 유기하고 고정폭 폰트로 수정한다. => 디자이너 리소스 많이 소모숫자만 고정폭 폰트로 수정 =>약간 짜친다, 디자이너 리소스 조금 소모때문에 다른 대안이 있나 싶어 찾아보니 pretendard 뿐만 아닌 OpenType을 지원하는 모든 폰트에 고정폭을 적용할 수 있는 방법이 있었다.nextjs, tailwindcss 환경에서 font OpenType 수정 방법이다.먼저 tailwind.config.ts 파일에 새로운 클래스를 추가한다.extend:..
트레이딩 뷰 사용하다 보면 tvwidget관련 메서드 사용하다가 신기한걸 볼 수있다 웹소켓이 준비 되기 전에 관련 메서드를 사용해 버리면 차트가 터져버린다... 그럴 때 웹소켓 상태 확인하는 promise 만들어서 리턴하고setTimeout(()=>callback(), 0) 처럼 setTImeout으로 감싸 macrotaskQueue에 던져놓으면 microtaskQueue에 들어간 모든 promise들이 처리되기 전까지 대기 타게 처리할 수 있다. 뭔소린지 모르겠으면 아래 글 보세요 https://donghyk2.tistory.com/151 js는 비동기 큐가 2개다?vanilla JS로 핑퐁게임 SPA 사이트 프로젝트 하다가 겪은 일이다.커스텀 게임 방 리스트 페이지위 페이지에선 2가지 비동기 동작이 ..