분류 전체보기
2022년 회고 (소프트웨어 마에스트로 회고)
2022년 회고 (소프트웨어 마에스트로 회고)
2023.01.132022년을 마무리하며 남기는 회고 2022년이 끝이 난 지 13일이 지났지만 별로 실감이 나지 않는다. 2022년 13월인 것 같다.ㅎㅎ 나의 2022년을 되돌아보며 한번 적어본다. 많은 일이 있었던 2022 Timeline 1. 힘들었지만~~ 아무 일 없이 전역을 했다. 나 이후로 전역하는 친구들이랑 자주 만난다. 역시 인생은 어떻게 될지 모르는 것!! ㅎㅎ 안에서만 보다가 밖에서 만나니 신기하고 반갑다. 이런 친구들이랑 평생 연락하게 되지 않을까 싶다. 전역하고 몇 개월 후에 휴가 나온 같은 부서 막내를 만났는데 잘해줘서 고마웠다고 하니 웅클했다ㅎㅎ 그 친구가 이제 곧 왕고라닝! 얼른 나와 ㅁㄱ형, ㄱ현.. 커피 갈아줄게..ㅎㅎ 전역을 하며 이제 개발 서적도 많이 읽고 개발도 실컷 해보고 싶었다. ..
모던 JavaScript 튜토리얼 파트 1 :: 5장 "자료구조와 자료형" 정리
모던 JavaScript 튜토리얼 파트 1 :: 5장 "자료구조와 자료형" 정리
2023.01.09모던 JavaScript 튜토리얼 5장을 읽으면서 정리하는 글입니다. 5장 자료구조와 자료형 1. 원시값의 메서드 원시값의 메서드 ko.javascript.info 원시값과 객체는 다릅니다. 원시값은 Property가 없습니다. 하지만 편하게 객체처럼 속성을 호출할 수 있습니다. 속성이 필요한 경우 원시값이 Wrapper를 통해 일시적으로 객체로 변하기 때문입니다. 잠시 메서드를 제공하기 위해 만들어진 원시 래퍼 객체(object wrapper)는 일시적입니다. 이를 Auto Boxing이라고 부릅니다. 객체는 여러 속성을 정의할 수 있습니다. 자바스크립트에서는 함수도 객체입니다. // 원시 객체를 직접 만드는 법 if (new Number(0)) { // 객체이므로, true console.log("z..
모던 JavaScript 튜토리얼 파트 1 :: 3장 "코드 품질", 4장 "객체:기본" 정리
모던 JavaScript 튜토리얼 파트 1 :: 3장 "코드 품질", 4장 "객체:기본" 정리
2023.01.02모던 JavaScript 튜토리얼 3장, 4장을 읽으면서 정리하는 글입니다. 3장 코드 품질 Chrome으로 디버깅하기 Chrome으로 디버깅하기 ko.javascript.info 브라우저는 JS를 실행시켜줍니다. 이런 브라우저에도 Javascript에 대한 것을 디버깅할 수 있는 기능이 내장되어 있습니다. 왼쪽 탭을 보시면 Thread, Watch, Breakpoints, Scope, Call Stack, 등의 익숙한 용어들이 보입니다. 다른 개발 툴과 같이 Step in/out/into, break point 등 기능이 다 있습니다. 단축키와 같은 것은 모던 Javascript 책에 잘 설명되어 있기 때문에 스킵하겠습니다. ㅎㅎ 사실 컴포넌트라는 개념은 리액트 전에도 있던 개념입니다 ㅎㅎ. Web C..
모던 JavaScript 튜토리얼 파트 1 :: 1장, 2장 정리
모던 JavaScript 튜토리얼 파트 1 :: 1장, 2장 정리
2022.12.26https://ko.javascript.info/ 를 읽으며 정리하는 글입니다. 이 책을 천천히 정리하면서 제가 알고 있는 내용을 함께 적어봅니당. 1장 소개 자바스크립트란? "자바스크립트는 ‘웹페이지에 생동감을 불어넣기 위해’ 만들어진 프로그래밍 언어"입니다. 보통 웹페이지의 HTML 안에 작성하거나 불러와서 웹페이지를 불러올 때 스크립트가 자동으로 실행됩니다. 자바스크립트는 자바스크립트 엔진에서 돌아간다. 브라우저엔 '자바스크립트 가상 머신'이라는 불리는 엔진이 내장되어있고 대표적으로 크롬에서 사용하는 V8 엔진이 유명합니다. 책에서는 자바스크립트는 안전한 프로그래밍 언어라고 표현합니다. 브라우저를 대상으로 만든 언어이기 때문에 메모리나 CPU 같은 저수준 영역의 조작을 허용하지 않습니다. 인터넷에서..
내 코드에 관한 고민 그리고 앞으로 해야 할 것들 (#NestJS Code Review)
내 코드에 관한 고민 그리고 앞으로 해야 할 것들 (#NestJS Code Review)
2022.12.17소중한 경험 최근에 달려오면서 짠 코드의 전반적인 코드 리뷰를 받을 수 있는 좋은 기회가 있었다. 사실 NestJS + Prisma가 흔한 조합은 아니라서 레퍼런스도 부족했고 성장하면서 짰기 때문에 잘 활용하지도 못했다. 해결하지 못한 의문들은 걸림돌로 마음속에 남았있었는데 많은 것을 해결할 수 있었던 소중한 기회였다. 2시간이 너무 짧게 느껴졌고 정말 많은 것을 느꼈다. 더 시간이 지나면 리뷰한 내용을 많이 까먹을 것 같아서 미리 피드백 복기한 것과 느낀점을 적어본다. 코드 리뷰 방식 처음부터 끝까지 내.. 방대한 코드를 남에게 소개를 하는 것은 처음이어서 긴장을 엄청했다. 코드 리뷰에 앞서서 미리 방어적으로 (변명을 하며) 밑밥 깔았다. 지금 생각해보면 코드로 바로 들어가면 되는데 괜히 소중한 시간을..
Mac 사용자를 위한 C#으로 개발할 때 좋은 도구
Mac 사용자를 위한 C#으로 개발할 때 좋은 도구
2022.12.13C#으로 개발할 때 좋은 도구를 추천해보고자 합니다. Mac 사용자 기준으로 작성된 글입니다. 가장 유명한 통합 개발 환경(IDE) 가장 유명한 것은 Visual Studio, Rider입니다. 모두 유용한 기능이 많고 아주 훌륭하고 편리한 도구입니다. Windows 환경이시라면 큰 고민 없이 마음에 드는 IDE를 시작하셔도 무방합니다. 실리콘 Mac에서는 Visual Studio가 성능이 별로고 Mac 환경에 딱히 친화적이지 않아서 JetBrains에서 만든 Rider를 그냥 쓰라고 추천받고는 했는데요. Mac용 Visual Studio 2022부터는 많은 것이 개선되었습니다. Visual Studio 특유의 환경과 IntelliSence를 좋아한다면 새로 나온 Visual Studio for Mac ..
[서평] 시작하세요! C# 10 프로그래밍
[서평] 시작하세요! C# 10 프로그래밍
2022.12.02시작하세요! C# 10 프로그래밍: 기본 문법부터 실전 예제까지 이 책의 목표는 여러분이 C#을 이용해 프로그래밍 기초를 탄탄하게 다질 수 있게 하는 것이다. 이를 위해 C# 언어의 최신 버전인 C# 10의 문법까지 구체적인 예제와 함께 상세히 설명하며, 단순히 wikibook.co.kr 이번 글에서는 "시작하세요! C# 10 프로그래밍" 책을 리뷰해보고자 합니다. 이전에 유니티를 하면서 C#을 공부한 적이 있는데요. 한 C# 7.3이 나올 때쯤 C# 5.0까지 공부한 기억이 있습니다. 오랜만에 C#을 공부해보니 새로운 점이 많았습니다. 이 책을 보면서 구글링하며 대충 넘어간 부분을 채우거나 정리할 수 있었습니다. 이때까지 읽으면서 느낀 이 책의 특징을 정리해보겠습니다. 책의 특징 [특징 1] .Net에..
[AWS] Route53 Domain 다른 AWS 계정으로 이전하기
[AWS] Route53 Domain 다른 AWS 계정으로 이전하기
2022.11.20소마 연수 기간이 끝나갑니다. 발표가 끝나면 해당 기관에서 발급해준 AWS 계정을 사용할 수가 없어서 다른 AWS 계정으로 이전해야 했습니다. 지원받은 AWS 계정의 Route53에서 산 도메인을 다른 AWS 계정으로 이전하며 겪은 것을 공유해보고자 합니다. Route53의 도메인을 다른 계정으로 이전해보자 Route53에서 구매한 도메인은 3가지 방법으로 이전할 수 있습니다. AWS에 직접 연락해서 이전하기 AWS SDK를 사용해서 코드로 이전하기 AWS CLI로 이전하기 저는 AWS CLI로 옮겨보았습니다. 문서가 잘 없네용.. 준비물 Route53에서 구매한 도메인을 가진 계정 도메인을 받아올 계정 AWS CLI 2 AWS CLI 2로 도메인 이전하는 법 A계정의 Route53에서 구매한 Domai..
[2022년] 컴퓨터공학 대학생 공부 및 면접 대비 자료 추천
[2022년] 컴퓨터공학 대학생 공부 및 면접 대비 자료 추천
2022.11.14컴퓨터공학 공부 자료들 2탄 새로 공부한 것도 있고 바뀐 생각도 있고 새로 알게 된 것도 있어서 "온라인 컴퓨터공학 공부" 글에 이어서 다시 한번 적어봅니당. * 이전 글: 나의 온라인 컴퓨터공학 공부 예전 글이랑 많이 중복됩니다. 개인적으로 참고해볼 겸 다시 정리해보는 CS(Computer Science), 프로그래밍 공부, 면접, 취준 자료 1. OSSU https://github.com/ossu/computer-science Open Source Society University Complete education in computer science using online materials 유명한 온라인 강의로 대학교 커리큘럼을 만든 것 2. Free Code Camp https://github.co..
[AWS] Elastic Beanstalk graceful shutdown (feat. AutoScaling Lifecycle Hook - TERMINATING)
[AWS] Elastic Beanstalk graceful shutdown (feat. AutoScaling Lifecycle Hook - TERMINATING)
2022.11.10대상 서버가 종료될 때 미리 사전 작업을 해주고 싶은 분들에게 도움이 되는 글입니다. 제가 겪은 문제의 상황 백엔드 앱을 배포할 때마다 사용 중인 접속자가 튕기는 문제가 발생했습니다.. 왜냐하면 Websocket은 TCP 연결을 계속 유지하기 때문에 Stateful 했습니다. TCP connection이 맺어진 서버가 블루-그린 배포이든 롤링 배포이든 다운이 되는 순간 모든 클라이언트가 튕겼습니다. HTTP만 썼으면 세션을 외부에(Redis, PostgresSQL 등) 저장해 두거나 해서 이런 현상을 막을 수 있었겠지만 WebSocket은 애초에 stateful 해서 항상 튕겼습니다. 특히, 클라이언트에서는 현재 WebSocket 연결이 끊기면 main 페이지로 튕기게 되어있어서 기존 유저들이 불편함을 ..
웹 애플리케이션 공동 명의로 저작권 등록하는 법
웹 애플리케이션 공동 명의로 저작권 등록하는 법
2022.11.07오늘은 팀에서 modocode.com이라는 웹 페이지를 출시하고 공동 명의로 저작권을 등록한 경험을 나눠보고자 합니다. ㅎㅎ 같이 만든 웹 애플리케이션 저작물을 공동 명의로 등록하는 법에 대해 알아봅시다. 1. 저작권 등록 사이트에 접속합니다 2. 컴퓨터프로그램 등록을 누릅니다 3. 회원가입 후 로그인합니다 로그인합니다. 본인 인증까지하셔야 저작물 등록이 가능합니다. 4. 온라인 등록신청 버튼을 누릅니다 5. 이미 저작물이 등록됐는지 선택합니다 처음 등록하기 때문에 '아니오'를 누르고 다음을 눌러줍니다. 6. 등록권리자가 "본인"인지 "대리인"인지 선택합니다 저는 제 서비스를 제가 등록하기 때문에 본인으로 선택했습니다 신청서를 마저 작성하고 다음을 눌러줍니다. 7. 신청인(등록권리자)에서 공동 저작자를 ..
리눅스에서 호스팅 중인 서비스가 외부로부터 접속이 안 될 때 문제 확인 방법
리눅스에서 호스팅 중인 서비스가 외부로부터 접속이 안 될 때 문제 확인 방법
2022.11.04친구가 호스팅 한 주피터 노트북이 로컬에서는 접속이 되는데 인터넷 공인 IP로는 접속이 안 됐습니다. 친구를 도와주면서 제시한 절차를 한번 공유봅니닷. 내가 제시한 진단 방법은 다음과 같다. 1. tcpdump로 패킷이 들어오고 나가는지 확인한다 tcpdump를 실행한채로 외부에서 접속해본다. 어떤 포트로 패킷이 들어오고 나가는지 캡처하려면 sudo tcpdump port 포트 명령어로 실행한채로 기다리고 있으면 된다. 캡처한 파일을 내보내서 와이어샤크에서 확인할 수도 있다. 참고. 내 기억으로 tcpdump가 인바운드는 iptable보다 우선이고 아웃바운드는 아니였다 - https://serverfault.com/questions/233302/will-tcpdump-see-packets-that-are..