반응형 전체 글250 JWT(JSON Web Tokens), OAuth(Open Authorization) Programming/ETC 2023. 9. 24. 2023년 9월 2일 ~ 9월 8일 미국 샌프란시스코/솔트레이크시티 여행 & 회사 offsite 회고 회사의 연간 offsite(원래의 장소에서 떨어진~ 등의 의미다) 행사에 참여하기 위해 모회사의 HQ가 있는 솔트레이크시티에서 한 주 정도 머무르게 됐다. 비행편을 알아보니 솔트레이크시티까지 직항이 없어 이번 기회에 환승하는 샌프란시스코를 이틀 정도 둘러보고 이동하기로 했다. 기억이 더 흐려지기 전에 귀국 비행기를 기다리며 여행기와 offsite 후기를 글로 담아본다. 사진은 후첨하기로...샌프란시스코 여행 샌프란시스코 여행은 약간의 아쉬움을 남겼다. 시차 적응을 하지 못해서 계속 골골거리는 상태로 이틀을 보냈기 때문이다. 그래도 기억에 남는 좋은 경험들이 많았다. 악명 높은 유나이티드 항공, 실제로 타보니... 회사에서 비행편과 숙소를 제공했기 때문에 개인적으로 가장 좋아하는(아마 색깔 때문인듯) 아시.. My/Careerlog 2023. 9. 9. [Low-code] 로우 코드 서비스 개발 툴, Retool 최근에 low-code 툴인 'Retool'에 대해 알게 되었다. admin 페이지 등 UI를 직접 개발할 필요 없이 약간의 JS와 SQL 지식만으로 웹 페이지를 만들고 운영할 수 있는 툴이라고 한다. 데이터에 관한 여러 대시보드를 만들 수 있을 뿐만 아니라 데이터를 직접 조작할 수도 있다. 홈페이지 https://retool.com/ Build any business software, remarkably fast. Retool is the fast way to build internal tools. Drag-and-drop our building blocks and connect them to your databases and APIs to build your own tools, instantly. C.. Programming/ETC 2023. 8. 28. [Vercel] 'npm ERR! code EINTEGRITY...' 에러 해결하기 에러 npm ERR! code EINTEGRITY npm ERR! sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgreytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== integrity checksum failed when using sha512: wanted sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgreytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w== but got sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==. (4940 bytes).. Programming/Deployment, CI, CD 2023. 8. 19. 나의 첫 오픈소스 기여: Next.js 공식 문서 한글 번역 참여한 계기 개발자가 된 후 오픈소스에 꾸준히 기여하려고 마음을 먹었다. 첫 번째로 내가 가장 잘 할 수 있고 장벽이 낮은 공식 문서 번역 or Merge Request 부터 시작하기로 했는데, 그동안은 업무에서 주로 사용하던 JS, React, Vue, React Native 공부만 하기도 바쁘다고 느껴져 시작을 못했었다. 그런데 이직 과정을 마치고 잠시 쉬던 중 마침 어떤 페이스북 개발 커뮤니티에서 한 우리나라 개발자분이 Next.js 공식 문서 한글 번역 프로젝트를 시작하신 것을 보았다. 번역 프로젝트는 항상 은근히 인기가 많아서 후다닥 들어가 봤는데, 다행히 프로젝트를 여신 지 사흘 정도 되어서 linking and navigating 파트를 맡을 수 있었다. https://github.com/N.. Programming/Next.js 2023. 8. 15. [CSS] 글꼴 이탤릭체로 만드는 법 업무에서 이탤릭체로 'Coming soon!'이라는 문장을 이탤릭체로 별도 출력해야하는 티켓이 있었다. 그런데 어떤 CSS 요소가 폰트의 스타일을 지정해줄까? tailwind 등에는 별도의 클래스가 있겠으나 scss를 사용하는 경우에는 pure css를 사용하게 된다. font-style 글자의 모양을 정하기 위해서는 'font-style' 속성을 쓰면 된다. font-style의 종류 normal 특별히 꾸미지 않는 일반적인 모양(글꼴의 디폴트 생김새가 될 것이다.)을 말한다. italic 이탤릭체 oblique 대부분의 글꼴에서 이탤릭체와 동일하지만, 일부 글꼴에서는 이탤릭체는 필기체처럼 표현되고 oblique는 그냥 기울기만 기울인 것처럼 표현된다. inherit 부모 요소의 속성을 그대로 상속 받.. Programming/HTML, CSS 2023. 8. 12. 미국 회사 재택근무 한 달 회고 예정에 없던 풀재택으로 미국 회사에서 일하게 된 지 벌써 한 달 하고도 일주일 정도가 지났다! 조큼은 늦은 회고, 앞으로의 계획을 적어 본다. How it is going... 입사 후 한 달 동안 다섯 개 정도의 PR을 만들었고 머지되었다. 매니저로부터 받은 첫 피드백이 긍정적이라서 좋았다! n시부터 n시까지만 일하고 업무용 노트북을 끄는 루틴에 어느 정도 적응한 것 같다. 애초에 여태까지는 무리한 업무를 할당받거나 하지 않아서 그렇기도 하지만, 생각보다 재택에 잘 적응하고 있는 것 같다. 9월 초에 있을 전사 offsite에 참석하기로 했다. Salt Lake City로 이동하기 전에 겸사겸사 샌프란시스코 여행도 계획중 +_+ 회사 덕에 거의 10년 만에 미국에 갈 것 같다. 갑자기 일복이 터져서 지.. My/Careerlog 2023. 8. 10. [IntelliJ IDEA] 'Initial heap size set to a larger value than the maximum heap size' 에러 해결기 이 에러는 맥북 프로 M2의 개발 환경을 세팅하면서 겪은 IntelliJ IDEA 관련 에러다. 사실 어제 이 에러를 겪었는데, 처음이 아니라 두 번째였다. 그런데 왜 또다시 몇 시간을 에러 해결에 쓰게 되었냐 하면, 입사 직후 IntelliJ를 처음 설치하면서 겪었을 때 구글링 후 해결한 뒤 제대로 정리해놓지 않았었다 ^^; 스스로에게 너무 화도 나고 짜증스러웠던 기억이라, 앞으로 더욱 정리를 잘 해야겠다는 동기 부여가 확실히 됐다. 사실 매일 업무 일지를 쓰고 있는데도 이렇게 빨리 치워버리고 싶은 마음에 잘 적지 않은 것이 발목을 잡을 줄 몰랐는데, 좋은 사례가 됐다. heap memory란? 사용자에 의해 자원이 할당되고 해제되는 메모리의 부분이다. 스택 메모리와 반대의 역할을 한다고 보면 된다. .. Programming/Java 2023. 7. 31. [JavaScript] .getMonth() 메서드는 왜 zero-base일까? .getMonth() 메서드란 const moonLanding = new Date('July 20, 69 00:20:18'); console.log(moonLanding.getMonth()); // (January gives 0) // Expected output: 6 Date.prototype.getMonth() 메서드는 Date 객체의 월 값을 현지 시간에 맞춰 반환한다. 그런데 이 때 월은 0부터 시작한다. 월만 0부터 시작하는 이유는? 모든 Date관련 get 메서드가 zero-base라면 이상할 게 없다. 하지만 연, 일은 그렇지 않은데 월만 그런 것은 매우 이상하다. 사람에게 자연스럽지 않고 일관성도 없기 때문이다. 호기심이 발동했는데, JS의 아버지인 브랜든 아이크의 예전 트윗에서 답을 발견.. Programming/Javascript, Typescript 2023. 7. 25. 졸업은 했지만 3학년입니다 그것은 바로 사이버대 3학년~! 빠밤 사이버대 학사 편입을 결정한 이유 이직 후 재택근무를 하게 되면서 조지아텍 온라인 석사 지원 계획을 조금 더 앞당기기로 했다. 원래는 독학사를 이용해 학사 학위를 받으려고 했는데, 그럴 경우 두 가지 문제가 있었다. 조지아텍 입시에 필요한 세 장의 추천서를 써주실 교수님들을 만나기가 불가능함 사실상 대학으로 인정받지 못하는 경우가 많음 그래서 곧바로 방통대 vs 사이버대라는 두 가지 선택지를 놓고 고민하기 시작했다. 내가 학사 편입을 결심한 것은 물론 대학원을 위한 명목상의 학사 취득의 목적이 컸지만, 실제로 배움에 대한 욕구 때문이기도 했다. 학사 과정에 들어간다면 개발자로 일하는 데 필요한 공부를 하고자 하지 대충 강의를 틀어놨다가 베껴서 시험보는 식으로 학위를 .. My/Careerlog 2023. 7. 20. SPA(Single Page Application) Single Page Application (단일 페이지 애플리케이션) 현재 페이지를 동적으로 렌더링함으로써 사용자와 소통하는 웹 어플리케이션 단일 페이지로 구성되며 서버로부터 최초에만 페이지를 다운로드하고, 이후에는 동적으로 DOM을 구성 처음 페이지를 받은 이후부터는 서버로부터 새로운 전체 페이지를 불러오는 것이 아닌, 현재 페이지 중 필요한 부분만 동적으로 다시 작성함 연속되는 페이지 간의 사용자 경험(UX)을 향상 모바일 사용량이 증가하고 있는 현재 트래픽의 감소와 속도, 사용성, 반응성의 향상은 매우 중요하기 때문 동작 원리의 일부가 CSR(Client Side Rendering)의 구조를 따름 SPA 등장 배경 과거 웹 사이트들은 요청에 따라 매번 새로운 페이지를 응답하는 방식이었음 MPA(M.. Programming/ETC 2023. 7. 15. [JavaScript] new 연산자 예전에 정리해봐야지~ 했던 new 연산자. 왜 정리하고 싶었는지는 잊어버렸지만, 종종 만나게 되기에 정리해보자. 정의 new 연산자는 '생성자 함수' 앞에 붙여 객체를 만들어주는 연산자라고 할 수 있다. new라는 이름이 암시하듯이 새로운 객체입니다~! 라는 의미로 받아들였다. JavaScript에서 생성자 함수는 객체를 만드는 함수다. 아래에서 Person함수는 생성자 함수이며, 일반 함수와 구분하기 위해 대문자로 시작한다. function Person(name){ this.name = name; this.introduce = function(){ return 'My name is '+this.name; } } var p1 = new Person('river'); document.write(p1.int.. Programming/Javascript, Typescript 2023. 7. 13. [React] 'as' props React 컴포넌트 라이브러리 중 'as'라는 이름의 프로퍼티를 사용하는 경우가 있는 것 같다. (아마 material UI로 추측한다.) as의 역할은 해당 컴포넌트 외부(다른 파일)로부터 HTML을 가져와서 대체할 수 있도록 해주는 것이다. 기본 JSX/HTML 문법은 아니고, 일부 라이브러리에서 사용하는 것으로 보인다. 예시 코드 // class형 컴포넌트 ... return ( ... ) 'studentInputText' 컴포넌트에서는 태그에 전달된 prop들을 그대로 사용할 수 있다. 사용 이유? 정확히 알기 힘들지만(한글 자료 너무 없음!) 코드를 직접 만져 본 입장에서는 유지보수의 의미가 큰 것 같다. 해당 컴포넌트에 조건이 너무 많이 걸려 있거나 내부 작업이 많이 필요하다면 메인 컴포넌트(.. Programming/React 2023. 7. 13. Flyway에 대해 알아보자: 오픈소스 DB migration 툴 DB migration 툴 Flyway에 대해 알아보자. DB migration이라고 하면 싸피에서 처음으로 Django를 배웠을 때 model의 내용을 연결한 DB(당시에는 sqlite)에 적용시켰던 게 기억난다. Flyway도 그러한 DB migration을 해주는 도구다. 하지만 어떤 특정 프레임워크에 의존적이지 않은 '오픈 소스' 툴이다. Flyway를 사용하는 이유 이미 배포된 서비스의 DB가 있다. 스키마도 복잡하고 사용자 데이터도 많이 쌓인 상태다. 이 상태에서 model(entity)에 변화가 생긴다면 어떻게 적용해야 할까? DB에 직접 접속해서 매뉴얼하게 명령어를 칠 수도 있지만, Flyway를 적용하면 로컬에서 변경 사항을 적용하면 알아서 관리해준다. 휴먼 에러를 방지하기 위한 목적이 .. Programming/Database 2023. 7. 11. 2주간의 재택 온보딩 회고 지난 금요일부로 2주간의 재택 온보딩이 끝났다. 어느 집단에서든 온보딩은 흡사 새로운 행성에 발을 딛는 우주비행사와 같은 기분으로 시작한다. 조직마다 그들만의 문법, 일의 양식, 규칙을 가지고 있기 때문이다. 그리고 그 사회의 일원이 되기 위해서는 이전에 내가 몸 담고 있던 것들에서 한 발 벗어나 새로운 것을 적극적으로 맞이하는 자세가 필요하다. 나 또한 이 사회의 목표와 규칙을 잘 이해하고 있고 뜻을 같이 함을 보여주기 위해서다. 그래서 한 회사에 입사한다는 것은 단지 노동력을 제공하는 것에 국한되지 않고 이런 내용을 적극적으로 받아들이는 것 또한 포함한다. 완전 재택으로 일하는 상황에서 이런 과정에 가장 중요한 것은 조직에 관해 잘 정리된 글을 읽는 것과 구성원들과의 원격 소통인 것 같다. 이 과정을.. My/Careerlog 2023. 7. 8. 이전 1 2 3 4 5 6 ··· 17 다음