원래는 INTP였는데, INFP가 되었다.T가 80퍼센트 정도였는데 이젠 40%, F가 60%이다. 정말 내가 감정적 공감에 능해진거 같지는 않은데.. 잘모르겠다. 다만 변한 이유정도는 알 듯 하다. 요즘 들어 느끼는거지만, 당연한 소리지만, 사람은 논리로서 동작하지 않는다. 감정이 들어갈 수 밖에 없다. 누군가를 볼 때 도 그 사람이 좋다면 뭘 해도 더 좋게 보게 되는것이고, 그 사람이 싫다면 뭔 짓을 해도 싫어보인다. 그 상황속에서 과연 나는, 우리는 진실로 객관적인 판단을 할 수 없다고 생각했다. 진실로 객관적인 판단이 무엇인지 부터가 불명확하다. 논리도 물론 중요하지만 최근엔 사람의 감정에 공감하는 것이 크게 다가온다. 특히 복잡하고 갈등이 많은 현대 사회를 보면 우리 T들도 감정에 휘..
문제 상황Google Search Console에서 "페이지 색인이 생성되지 않음: 중복 페이지, Google에서 사용자와 다른 표준을 선택함" 오류 발생사용자가 원하는 표준 URL: https://example.com/en/blog/...Google이 선택한 표준 URL: https://www.example.com/posts/...원인 분석1. Canonical 태그 문제문제점: 모든 페이지의 canonical 태그가 메인 페이지를 가리키고 있음원인: 각 페이지의 고유한 URL을 canonical로 지정하지 않아 Google이 혼란스러워함2. 메타 태그 불일치 문제문제점: 페이지마다 메타 태그 작성 방식이 달라 일관성 없음원인:수동으로 작성한 메타 태그들이 서로 다른 URL 형식 사용OG 태그, Twi..
What I doAS - IS style background-image attribute로 이미지 로드TO - BEnext/image Image Component 사용 하여 로드width, height 지정minimumCacheTTL → Image cachingoptimize with AVIF, WEBPset Priority to Next Image(Main Page Top content → priority: “high”)// Image Load With next/image Image Component// it change to below// even if you not use next/image, you can use that api(_next/image?url=[imageURL])// for imag..
React의 배포SSR를 사용하지 않는 CSR React 라이브러리 및 React 기반 프레임워크들은 빌드하면 아래와 같은 파일이 산출물로 나오기 때문에 정적 배포가 가능하다.assets/scripts/ㄴ index.jsㄴ index_ABCD.jsㄴ ...index.html따라서 AWS의 S3와 같은 서비스를 사용하여 정적 배포를 하기도 하고, CDN을 사용하기 위해 앞단에 cloudFront 서비스를 붙여 사용하기도 한다.CloudFront의 캐시 기능cloudFront는 캐시기능을 제공한다, 아래 사진과 같이Cloudfront → 배포 ID 선택 → 작업 → 동작 → 편집에서 캐시가 걸려있는것을 확인할 수 있다. (이 경우는 비용절감을 위해 캐시를 직접 설정했다){ "type": "mediaSing..
오늘은 나름대로의 깨달음? 을 얻은것 같다. 나는 어릴때부터 애매하게 잘하는 아이였다. 어딜가도 중간이상은 무조건하지만 그 이상이 안되는 아이. 나는 항상 30등은 해도 1등은 하지 못하는 아이였다. 초등학교에서도, 중학교에서도, 고등학교에서도 심지어 대학을 와서도. 고등학교때까진 그렇게 느끼지 않았다. 공부가 재밌기도 했지만 별생각없이 살아서, 수학 학원 강사를 하던 엄마도 항상 나한테 그런 얘기를 했다. "조금만 더 하면 될것 같은데..." 하지만 나에겐 그 조금이 부족했다. 항상. 그러다가 대학을 오니 한 친구를 만났다. 이상할 정도로 매사에 열심히고 빛나는 인생을 사는 친구였다. 언제나 처럼 처음에는 둘이 비슷했다. 아니 조금은 내가 더 나았을지도 모르겠다. 그러다 한달 두달이 지나..
한때 염세주의일까 허무주의일까에 빠져있었을까. 철학은 제대로 공부해본적이 없기에 나무위키나 슬쩍 읽어본 느낌으론 그런거 같다. 학교를 다니면서, 또 커뮤니티를 보면서 사람이라는 것에 지쳤었고, 죽음 이후 아무런 의미없는 인생에 회의감을 느꼈었지. 40살에 편안히 안락사하는것이 내 인생 목표인적도 있었어. 그저 흘러가는대로 살면서 즐거우면 즐거운 대로 슬프면 슬픈대로 나 하고싶은거나 하면서 살다가 그렇게 죽는게 가장 편하지 않을까 그런 생각을 하면서. 그래 뭐 그런 무의미한 인생인데 나 재밌는거, 나 즐거운거나 해보지 하면서 이런저런 내가 하고싶었던걸 적었었지 여러가지 하고싶은게 많았지만, 그나마 현실적으로 당장할 수 있는건 별 보러다니기 정도. 밤에 렌트카 하나 빌려서 적당히 근처 산에 올라가거나..
이 글에선 Typescript에서 사용되는 형식인 Union 형식, Intersection 형식에 대해서 알아보고, 필자가 가졌던 의문인 Union형식을 사용할거면, 상속을 사용하는 것이 낫지 않은가? 에 대해 설명을 하고,Union 형식이 사용되는 간단한 예시를 소개할 예정이다. Union형식과 Intersection형식Union 형식Union 형식은 여러 타입 중 하나의 타입을 가질 수 있도록 정의한다. 이는 상속의 개념에서 부모 클래스와 비슷하게 동작한다. | 연산자를 사용해 여러 타입을 조합할 수 있다. 예를 들어, Circle과 Rectangle을 대표하는 Shape 타입을 Union 형식으로 정의할 수 있다.type Circle = { radius: number;};type Rect..
기본적으로 URL Scheme기술을 사용해서, 다른앱을 킬 수 있도록 하는 것이다. 나는 이 방법을 GTD를 미리알림으로 구현하면서, 문서를 링크할때 노션앱으로 바로 이동하기 위해서 사용했다. (사용법 미리보기)사용법 1. 먼저 이동하고싶은 노션 문서에 들어가서 오른쪽 상단 "공유" 버튼을 눌러준다. 2. 링크 공유를 누르고, 복사를 눌러 해당 노션 링크를 복사한다 3. 미리알림에 들어가 앱 링크를 걸고싶은 항목의 느낌표를 눌러 상세정보에 들어가준다.4. URL부분에 복사한 링크를 붙여넣는다.5. 링크를 붙여놓고 해당 빨간 네모 부분을 변경해준다.https://www.notion.so -> notion://notion.so 6. 완성!!
스토리북은 무언인가?UI 컴포넌트를 완성된 프로그램으로 생각하게 만들어주는 도구 라고 생각한다.우리는 storybook을 사용하게 되면서, UI 컴포넌트에 대해문서화 작업기능테스트시각적테스트등의 작업을 진행하면서, UI컴포넌트 자체를 하나의 완성된 프로그램으로서 만들어 나간다.문서화 작업 React나 컴포넌트 기반의 프론트엔드 개발을 진행하면, 꼭 겪게되는 문제가 있다. 다른사람 (과거의 나를 포함해서) 이 만든 컴포넌트의 존재를 모르거나, 이해할 수 없는 경우이다. 컴포넌트가 있는지도 몰라서 다시 똑같은 기능의 컴포넌트를 만든다거나, 이미 만들어진 컴포넌트지만 그 컴포넌트의 기능을 제대로 이해하지 못해, 결국 다시 만들어 버린다던가하는 일이다. 아마 React기반의 프론트엔드 개발을 진행해본 사람..