환경: yarn, vite, react, typescript 노션으로 작성한 포폴을 개인 github.io에서 임베딩을 시도하는 중이다. React에서는 react-notion과 react-notion-x라는 라이브러리를 사용해 노션을 임베딩할 수 있다. 이렇게 1시간 만에 완성하겠거니 싶었는데.. react-notion 출처 import { Suspense } from 'react'; import 'react-notion/src/styles.css'; import 'prismjs/themes/prism-tomorrow.css'; // only needed for code highlighting export default function ReactNotion() { const [response, setR..
1차 서버 리팩토링 후 배포하니 문제가 발생했다. 계속해서 똑같은 정보를 담은 메일이 반복해서 전송되는 문제이다. 전송받은 게시물이 중복되지 않도록 DB에 게시물 인덱스를 저장하는데, 여기서 문제가 발생했다. 슈팅 원인 // server/src/types/UserType.ts export interface UserType { email: string; latest_post_indexes: number[]; // here! department_code: string; subscribe_time: Date; } 기존 유저 테이블에는 latest_post_indexs인데, 리팩토링하면서 latest_post_indexes으로 바꾼 것이 문제였다... 허무하게도 변수 이름을 원래대로 고치니 해결됐다. 메일 전송..
Migration 그동안 미루고 미루었던 서버 리팩토링을 진행하기로 했다. 그 과정을 기록한다. 이슈 현재 MailBadara 서버의 문제는 바로, 구독자들에게 뉴스레터를 전달할 때 순간적으로 메모리 사용량이 튀어서 Koyeb(호스팅 플랫폼)의 무료 플랜 메모리 오버로 프로세스가 강제로 종료된다는 것이다. Koyeb에선 프로세스가 죽을 때 즉시 재실행시켜주기 때문에 메일 전송 로직은 완료되기는 한다. 끝날 때까지 몇 번 씩 프로세스가 죽을 뿐.. 서비스가 작동"은" 해서 로직을 더 이상 수정하지 않고 이 상태로 배포하고 말았는데, 한 달이 지난 지금. 더 이상 미룰 수 없다 생각했고 진행 중이다. 슈팅 이를 해결할 방법은 2가지다. node에서 bun으로 migration node보다 훨씬 빠르고 효율적..
회고 2023-11-09 ~ 2023-11-10. 무박 2일 간의 해커톤 여정을 끝내고 돌아왔다. 현재는 해커톤이 끝난 지 3일이 지난 새벽이다. 해커톤이 끝난 주말 동안은 잠만 자고 놀았다. 재밌기는 하지만 역시 잠도 안 자고 몰입하기는 힘든 일이었다. 그래도 이번엔 노력한 만큼 성과를 얻을 수 있었다. 그 과정을 기록해보고자 한다. 팀 모집 언제였는지는 기억나지 않지만 공모전 앱에서 ABB 해커톤을 보고 사람을 모았다. 내가 할 줄 아는 것은 React 프론트엔드 밖에 없었기 때문에, 내가 프론트 개발자 확정인 상황에서 그 외의 직무를 모집해야 했다. "백엔드 개발자"와 "AI 개발자", 그리고.. 있으나 없으나 상관없다 생각한 "기획자". 백엔드 개발자로는 고등학교 동창으로, 1학년 때부터 계속해서..
회고 2023년 11월 1일 ~ 2023년 11월 2일, 무박2일 해커톤을 다녀왔다. 10개팀 중에서 1개팀이 결석했고, 9개팀 중에서 4등을 뽑는 대회였지만 뽑히지 못했다. 결과는 없었지만 배운 것은 있었다. 창업 해커톤 일반적인 개발 해커톤이 아니라 "창업 해커톤"이었다. 기술적 구현이나 시연보다는 "창업할 만한 아이디어"를 중점적으로 보는 느낌이었다. 오후 3시부터 해커톤이 시작되면서 멘토링을 통해 기존의 아이디어부터 갈아엎었다. 기존의 아이디어는 "부산 청년들이 소통하고 연대할 수 있는 커뮤니티"였지만, 약한 BM과 커뮤니티라는 평범함 등의 이유로 갈아엎게 되었다. 결국 밤 12시까지 아이디어를 디벨롭하면서 기획을 고쳤다. 주어진 16시간 중 9시간을 창업 아이디어 기획에 써버렸다. 남은 7시간 ..