일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- Object
- nodejs
- nodemailer
- 오브젝트
- futureself
- 스터디
- 자청
- 독후감
- OOP
- Study
- Validation
- 클린코드
- 퓨처셀프
- 일상속귀한배움
- 개발자
- validator
- PRISMA
- 역행자
- 조영호
- 객체지향의사실과오해
- 부자아빠가난한아빠2
- Nestjs
- typescript
- BOOK
- 세이노의가르침
- googleapis
- 북스터디
- serverless
- UNiQUE
- AWS
- Today
- Total
목록전체 글 (82)
우당탕탕 우리네 개발생활
최근 prisma 라이브러리에 대한 typing이 얼마나 섬세하게 작성되어 있는지 새삼 느낄 수 있었다. const updateUser = await prisma.user.update({ where: { email: 'viola@prisma.io', }, /** Type '{ email: string; }' is not assignable to type 'UserWhereUniqueInput'. Object literal may only specify known properties, and 'email' does not exist in type 'UserWhereUniqueInput'.ts(2322) index.d.ts: The expected type comes..
지은이 찰스 아서(Charles Arthur)는 영국 가디언지의 IT 전문기자, 인디펜던트, 뉴 사이언티스트에서도 근무한 바 있다. 찰스 아서가 기술 및 과학 관련 기자로 활동한 기간은 줄잡아 25년이 넘는다. 그동안 기술산업분야의 쟁쟁한 인물들을 모두 다 만났다. 수많은 행사에서 빌 게이츠, 스티브 잡스, 구글의 임원들을 인터뷰했고, 애플, 구글, 마이크로소프트의 활동에 대한 광범위한 취재 활동을 벌여왔다. 현재 기술과 관련된 모든 주제에 대해 강연과 저술, 블로그 활동을 하고 있다. 이 책의 표지에 적힌 문구(애플, 구글, 마이크로소프트의 검색, 음원, 스마트폰, 태블릿을 둘러싼 전쟁의 기록)와 동시에 책의 두께(약 430페이지)를 보면서 이 대단한 기업들간의 전쟁이 정말 치열했겠구나 짐작을 해볼 수..
최근 운영하고 있는 서비스에서 이슈를 발견했습니다.@Injectable()class TestProvider { constructor() {} @Cron('0 */10 * * * *') async methodA(): Promise { // group에 대한 데이터 처리 // 하위 item에 대한 데이터 처리 // 3rd party API } @Cron('0 */10 * * * *') async methodB(): Promise { // 하위 time에 대한 데이터 처리 // 3rd party API }}이슈가 있는 서비스로직에서는 특정 기능과 관련된 서드파티 API를 호출해야 합니다.이 서드파티 API를..
저희 백엔드 팀에서는 이미 서비스 내에 신고처리나 특정 이슈발생(결제이슈 등)을 Slack의 Incoming Webhook으로 받아보고 있습니다. 근래 결제이슈에 대한 Incoming Webhook을 한 가지 더 설정할 일이 생겨서 레퍼런스를 찾던 중 Slack console에서 Incoming Webhook을 등록하는 과정을 찾기가 어려웠습니다. 다양한 레퍼런스들을 통해 결국 해결했고 이 과정을 정리해두고자 합니다. 우선 아래와 같이 https://api.slack.com에 접속해서 Your apps를 누릅니다. 아래와 같이 Create New App을 할 수 있습니다. 새로운 앱을 만든 다음에 그 안에 Webhook서비스들을 여러 개 만드는 구조이기 때문에 추후 webhook에 대한 관리가 용이할 ..
저는 Nestjs + typescript 기술 조합으로 백엔드 개발을 하고 있습니다. 최근 개발을 하면서 두 가지 궁금증이 생겼습니다.- class-validator를 사용하여 decorating한 클래스는 어느 상황에서든 validation을 하는가?- 클래스 멤버 뒤에 붙는 ! 과 ? 는 어떤 역할을 하는가? 위 궁금증들을 해결하면서 정리한 생각을 기록할 겸 공유하려고 합니다.class-validator를 사용하여 decorating한 클래스는 어느 상황에서든 validation을 하는가?제가 있는 백엔드 팀은 서비스코드의 리턴 값과 타입이 일치하는 mapper 클래스 파일을 만들고 이 mappper 인스턴스에 값을 담은 후 리턴을 하는 규칙이 있습니다.mapper클래스 내부에는 class-valid..
너는 계속해서 꿈을 추구하기보다 개인적인 생존을 더 걱정하고 있다. 너는 두려움 때문에 열정을 잃었다. 계속해서 가는 가장 좋은 방법은 가슴속의 열정을 계속 타오르게 하는 것이다. 네가 무엇을 하려 했는지 늘 기억해라. 그러면 여행은 쉬워질 것이다. 자신에 대해 더 걱정하기 시작하면, 두려움이 너의 영혼을 갉아먹을 것이다. 열정은 사업을 만든다. 두려움이 아니다. 너는 여기까지 왔다. 너는 가까이 왔다. 이제 와서 뒤돌아보지 마라. 네가 무엇을 하려 했는지 기억해라. 그런 기억을 가슴속에 간직하고 불꽃을 꺼뜨리지 마라. 너는 언제든지 그만둘 수 있다. 그런데 왜 지금 그만두느냐? 세상을 살다 보니 돈을 바라보게 된다. 그렇게 돈을 바라보며 살다 보니 다양한 두려움들이 쌓이게 되었다. 돈을 바라보는 것이 ..
사람들의 말을 귀담아들을 줄 알아야 하고, 각 사람에게 알맞은 단어를 구사할 줄 알아야 한다. 저자는 사람들의 유형을 4개의 사분면(E(Employee), S(Self-Employed), B(Business Owner), I(Investor))에 빗대어 분류하고 있다. 각 사분면에 속하는 사람들은 가치관이 너무도 다르다. 단적으로 예를 들면, E는 지극히 안정적이며 복지를 우선시하지만 B는 매우 도전적이며 실수를 통해 배운다는 사실을 굳게 믿고 행한다. 이런 상황에서 E에 속하는 사람들에게 B의 관점으로 얘기를 하게 된다면 E에 속하는 사람들은 심한 거부반응을 느끼게 될 것이다. 내가 어느 사분면에 속해있건 세상은 각기 다른 사분면에 속해있는 수많은 사람들의 조합으로 이루어져 있다. 그렇기에 그들의 말을..
저자는 서른네 살, 아들 셋을 키우는 다둥이 엄마이자 외벌이 남편을 둔 전업주부다. 은행원이었지만 결혼을 하고 임신을 하면서 직장을 그만뒀다. 살림에 조금이라도 보태고자 멋모르고 시작한 펀드 투자로 큰돈을 잃었고, 엎친 데 덮친 격으로 살던 전셋집마저 값이 크게 오르면서 아이 셋을 데리고 쫓기듯 이사를 다녀야 했다. 그러다 문득 전세가가 미친 듯이 오르는 이유가 궁금해졌고, 자신의 삶을 좌지우지하는 경제에 대해 알아야겠다는 필요성을 느껴 독학으로 경제를 공부하기 시작했다. 그 결과 2010년 약 3천만 원으로 내 집 마련에 성공한 후, 6년간 꾸준히 투자를 하면서 단 한 번의 실패도 없이 임대수익과 시세차익을 얻으며 아파트 15채를 보유하기에 이르렀다. 살림과 육아에 스물네 시간을 올인하던 생활 패턴을 ..