반응형

동고 팔자 상팔자 225

반드시 알아야하는 혈액검사(피검사) 종류와 해석

건강검진이나 병원에서 피검사를 종종 하게 된다. 그럴 때마다 피검사 결과를 보고 보통 의사들은 "음, 괜찮네요~", "빈혈이 좀 있네요~" 정도만 알려줄 뿐 정확히 어디가 어떻게 안 좋고, 어느 정도 안 좋은지 설명을 해주지 않는다. 하지만 나를 포함한 대부분 사람들은 거기에 대해서 구체적으로 물어보기를 꺼려한다. 의사에 대한 믿음보다는, 괜한 미안함이랄까. 결국 구체적인 내 현재 상태를 파악하려면 스스로 공부하는 수밖에 없다. 어디가 어떻게 안 좋고, 내가 지금 어떤 상황인지 알려면 환자도 공부를 해야 한다. 요즘은 세상이 좋아져서 피검사를 하면 각 병원 어플에서 수치를 바로 볼 수 있다. 피검사도 종류에 따라 나오는 게 다양한데, 검사 결과가 실시간으로 어플에 올라온다. (경험에 의하면 1시간 후부터..

정보 2024.02.18

디즈니 주가 무슨일이지

이틀 전에 디즈니 신규 진입했는데 자고 하루 만에 11% 이상 급등했다. 무슨 일이 있었던 걸까. 뉴스를 좀 찾아봤다. 실적이 좋았단다. 근데 제목말고 내용에서 실적 수치보다 더 의미 있는 내용을 볼 수 있었는데 배당금을 작년보다 50% 늘린다고 한다. 그래봤자 주당 1달러도 안 되는 금액인데 배당금을 늘린다는 거 자체가 주주들에게 큰 의미가 있다. 코로나 터지고 배당을 없앤 걸로 알고 있었는데 배당을 주긴 줬나 보네. 이거 내가 기대하던 뉴스다. 단순 캐릭터 라이선스만 받는 게 아니라 게임 개발에 참여하는 거다. 근데 에픽게임즈 투자, 지분 인수보다는 게임 회사 하나를 통째로 인수하는 게 낫지 않나라는 생각을 좀 해본다. 허리띠 졸라매어서 결과가 좋았다는데 이건 좀 안 좋아 보인다. 비용절감은 일시적인..

신규 종목 매수 (디즈니, 넷마블)

투자글은 오랜만이다. 작년 말에 미장 대부분 종목을 매도하고 수익 실현을 하였다. 관망하면서 좀 떨어지면 다시 사야지 하고 있었는데 역시 내가 팔면 오른다고 다시 살 기회를 주지 않고 더 올라버렸다. 그렇다고 불나방처럼 달려들면 안 되기 때문에 지켜보면서 기다리는 중이다. 그러다 문득 이런 생각이 들었다. 어쩌면 AI보다 메타버스가 더 가까이 있지 않을까. 메타의 실적이나 출시하자마자 많은 비아냥을 받은 애플의 비전프로가 첫 시발점으로 보인다. 개인적으로 지금의 애플 비전프로는 기술력을 떠나 너무 멋이 없기 때문에 보급이 많이 되진 않을 것으로 보인다. 뭐니 뭐니 해도 멋이 중요하기 때문. 하지만 만약 이게 많이 보급이 된다면이라는 가정을 세워봤다. 그럼 비전프로에서 사용되는 앱들이 많이 나올텐데 이것들..

오사카 마라톤 D-56

오사카 마라톤까지 56일 남았다. 준비는 잘 되어가고 있는가 이번달 누적 134km. 올해 누적 550km 작년부터 러닝을 쉬다가 올해부터 다시 달리기 시작했다. 8월에 월 누적 50km 정도 달리면서 슬슬 몸이 다시 풀리기 시작했고 10월부터는 월 누적 100km를 넘겼다. 이번달 무릎 부상 열흘 정도 치료받으면서 재발 방지를 위해 거리와 페이스를 확 낮췄다. 이번달 훈련 목표는 이틀마다 10km를 540 페이스로 달리고 격주로 15km 이상 LSD를 하는 것이었지만, 역시 계획은 계획일 뿐. 매일 5km 정도를 600 페이스로 조깅하는 걸로 훈련 변경 치료는 열흘 정도 받은 것 같다. 오늘 올해 마무리로 25km를 목표로 달렸지만 19km에서 포기 부상이 아직 완전히 회복된 게 아니더라. 빙판 조심하..

취미 2023.12.31

애플워치에서 NRC로 데이터 보내기 (feat 런갭)

런갭(RunGap)을 사용해서 러닝 데이터 연동하기 가민, 애플워치 비교 및 후기 에 이은 애플워치와 NRC 연동하는 방법 애플워치 트레이닝 앱을 쓰고 러닝을 하면 러닝 데이터가 NRC와 동기화되지 않는다. 스트라바로는 데이터를 잘 보내주는데 NRC로만 데이터를 못 보낸다. 그래서 애플워치 유저 중에 NRC에도 데이터를 쌓아야 하는 러너 들은 아예 러닝앱으로 NRC를 사용하거나 트레이닝, NRC 모두 킨다고 가민 쓸 때는 가민이 NRC에게 바로 데이터를 쏴줬다면, 애플워치에서 NRC로 데이터를 보내려면 중간에 가민을 한번 끼고 데이터를 보내야 한다. 애플워치 -> 가민 -> NRC 이렇게. 근데 애플워치에서 가민으로 데이터를 바로 보낼 수 없는데 이걸 할 수 있게 해주는 앱이 런갭(RunGap)이다. 사..

취미 2023.12.25

가민, 애플워치 비교 및 후기

가민포러너 45, 애플워치 SE2 (2세대) 비교 - 러닝 위주 가민 5년 가까이 썼더니 배터리가 맛이 갔다. 5년이면 많이 썼지... 가민 45를 큰 불편함 없이 썼던 터라 같은 모델을 재구매(가장 저렴함 모델이었다. 내 기억엔 10만원 초반이었다.) 하려고 봤는데, 더 이상 팔지 않더라. 내가 전문 러너도 아니고 취미용으로 하는 거라 GPS, 페이스, 심박수 정도만 볼 수 있는 모델로 찾아봤다. 다음으로 저렴한 모델이 가민 55인데 가격이 무려(?) 24만원이다. 내가 사용하던 45보다 10만원이다 비싸다. 이때 갑자기 떠오른 게 애플워치 SE 2세대다. 가격은 30만원으로 6만원 차이다. 가민을 살지 애플워치를 살지 큰 고민에 빠졌다. 가장 큰 차이는 크게 배터리와 활용도다. 배터리는 가민이 압도적..

취미 2023.12.17

jackson objeckMapper List 타입 역직렬화(deserialize) 분석

동일한 값을 반환하는 이름만 다른 getter는 어떻게 deserialize 될까? 자바에서 직렬화, 역직렬화 시, 많이(거의) 사용되는 jackson 라이브러리의 deseialize 처리에 관한 글이다. 예상하지 못한 결과가 발생해서 jackson 라이브러리 코드 구현부를 살펴보았다. 현상 위는 name, itemList 변수가 선언되어 있는 Store 클래스이다. 각 변수에 대한 getter는 lombok으로 정의되어 있다. 알 수 없는 프로퍼티를 무시하는 @JsonIgnoreProperties(ignoreUnknown = true) 어노테이션도 추가되어 있다. 그리고 name을 대문자로 반환하는 getUpperName, itemList를 반환하는 getDiscountedItemList가 정의되어 있..

개발 2023.07.16

무코다 이발소

한동안 하루하루 먹고 살기 바빠서 책 읽을 여유가 없었는데 이제 좀 여유가 생겼다. 스스로 바쁘게 산탓도 있지만 오랜만에 주말내내 여유롭게 책도 읽고 드라마도 보고 낮잠도 즐기니 세상을 다 가진것 같다. 무코다 이발소는 한때 탄광산업으로 번성했지만 지금은 소멸위기에 놓인 도마자와 마을과 주민들의 이야기다. 무코다 이발소는 도마자와 마을에 있는 이발소이고 이발소에 대한 이야기는 아니다. 일본도 그렇고 한국도 그렇고 농촌 소멸위기는 공통된 사회문제이다. 책을 읽는 내내 고향 생각, 어릴적 생각이 많이 나고 소설속 모습과 많이 오버랩되었다. 동네 사람들은 한다리 건너면 아는 사이고, 주변 이웃집 문은 항상 열려있었고 마치 우리집인냥 마음껏 드나들며 거리낌없이 지내던 시절. 그게 당연한줄 알았던 시절이었는데 지..

취미 2023.07.02

Sentry onpromise 설치 및 vue 애플리케이션 설정

Sentry는 로그 취합 및 분석 도구이자 모니터링 플랫폼이다. Front-End 로그 수집에도 많이 사용되는 플랫폼이다. 다양한 프레임워크를 지원하고, 로그 시각화 도구까지 지원한다. Saas 형태로도 제공하고 onpromise 방법도 제공한다. docker compose나 helm chart를 사용하여 쉽게 설치할 수 있다. 개인 서버가 있고, freetier가 부족하면 직접 설치해서 사용하는 것도 좋은 선택이다. Self-Hosted 설치 Docker compose 또는 helm chart를 사용하여 설치한다. 가이드 : https://github.com/getsentry/self-hosted git : https://github.com/getsentry/self-hosted helm chart :..

개발 2023.06.18

자바스크립트 Vite Github octokit 세팅 에러

깃허브 octokit 라이브러리 사용 에러 조치 빌드 환경 : Vite rest api를 사용하려면 octokit 설치할 필요 없고 @octokit/core만 설치해도 된다. yarn add @octokit/core Vite에 아무 설정도 하지 않으면 아래 에러가 발생한다. caught ReferenceError: global is not defined at index.mjs:657:16 vite.config 파일에 아래 global 설정 추가 define: { global: {}, }, global 설정 추가했는데 아래 에러가 뜨면 dex.mjs:1165 Uncaught TypeError: Cannot read properties of undefined (reading 'prototype') at in..

개발 2023.04.26

vercel 404 NOT_FOUND 에러 해결

vercel에 간단한 SPA 앱을 만들어서 배포했는데 아래와 같은 에러가 발생하였다. test.com/about 같은 하위 URL로 접근했을 경우, 서버(vercel)는 해당 URL을 처리하는 방법을 모른다. SPA의 라우팅 처리가 아닌 해당 리소스를 찾으려고 하기 때문에 404 에러가 발생하는 것이다. 이럴 때는 vercel에 내 SPA 앱의 인덱스 경로를 설정해 주면 된다. vercel rewrites를 참고해 vercel.json에 rewrite 설정을 하면 된다. { "rewrites": [{ "source": "/(.*)", "destination": "/" }] } 위의 rewrites 방법은 단순하지만 단점이 있다. 어떤 이유로 이미지나 번들, html에 직접 접근하지 못한다. 이럴 경우에는..

개발 2023.03.25

자바 벨리데이터(validator)과 리플렉션(reflection)

validator는 null을 검사하지 않고 순서를 보장하지 않는다. 아래 클래스처럼 벨리데이터를 사용하던 중 의문이 든 내용이다. class User { @Size(min = 1, max = 50) @Pattern(regexp = "^[a-zA-Z]$") private String name; @Min(value = 18) private int age; @Min(value = 130) private int tall; public User(String name, int age, int tall) { this.name = name; this.age = age; this.tall = tall; } } - name에 null이 들어와도 에러가 발생하지 않는다. @size, @pattern 동작 안 함 - 클래스..

개발 2023.03.15

vue 여러개의 값을 동시에 watch 하는 방법

여러 프로퍼티를 한 번에 watch 하는 방법 아래와 같은 코드가 있다. car와 coffee 값이 변하면 동일한 doSomething 함수를 호출한다. 여러 개를 watch 해야 하는 상황에서 모든 프로퍼티마다 watch를 선언하지 않고 한 번에 하는 방법이 있다. watch: { car: function (val, oldVal) { doSomething(); }, coffee: function (val, oldVal) { doSomething(); }, // .. so on } Vue 3 Vue 3에서는 아래처럼 할 수 있다. import { watch, ref } from 'vue'; export default { setup(() => { const car = ref('car'), coffee = ..

개발 2022.12.13

다크모드가 근시와 난시를 유발할 수 있다고 한다

평소에 주로 다크모드만 사용하는데 근시와 난시를 유발할 수 있다니. 내용을 보면 중고등 때 다 배운 내용들이다. 그렇다고 다크모드를 포기할 순 없는 노릇이니 자기 전에 누워서 핸드폰 하는 버릇을 고치거나 시간을 줄이던가 해야 할 듯. 크랩에서 이 내용이 컨텐츠로 나왔는데 내용을 정리하면, 1. 다크 모드는 근시와 난시가 유발될 수 있는 것은 맞다. 다크 모드를 쓰게 되면 빛의 양이 줄어들기 때문에 더 잘 보기 위해서 눈의 조절력이 더 많이 소모된다. 2. 빛이 줄어들게 되면 동공이 더 확장된다. 확장이 되면 눈 안에 들어온 빛들이 한곳에 모이지 못해서 깨끗하고 선명한 상을 만들지 못한다. 그렇게 되면 눈 안의 수정체의 위치가 약간 앞으로 이동을 하게 되고 근시가 유발될 수 있다. 근시가 유발되는 환경에서..

정보 2022.12.10

git gone 원격에서 삭제된 로컬 브랜치들을 한번에 삭제하는 방법

git gone 명령어를 만들어서 로컬 브랜치들 정리해보자 보통 이미 반영 또는 머지된 원격(remote) 브랜치들은 삭제된다. 하지만 그 브랜치들을 체크아웃(checkout)한 로컬 브랜치들은 여전히 우리 로컬에 존재한다. 이 브랜치들을 정리하지 않으면 로컬에 무수히 많은 브랜치들이 남게 되는데 이 브랜치들을 편하게 삭제할 수 있는 방법이 있다. 트래킹하는 원격 브랜치가 없는 로컬 브랜치는 지워지지 않으니 안심하고 사용해도 된다. git gone 명령어를 새로 만들 거다. git config 명령어를 통해 바로 등록해도 alias를 등록해도 되고, gitconfig 파일을 열어서 직접 입력해도 된다. 방법 1) config 명령어로 바로 등록 git config --global alias.gone "!..

개발 2022.12.10
반응형