분류 전체보기

· 생각
글을 잘 쓰고 싶다는 생각을 가진 지는 꽤 오래되었다. 그런데, 부쩍 나에게 글쓰기에 대한 자극을 제공하는 사람이 있다. 요즘 듣고 있는 전공수업의 교수님이다. 이제 겨우 이 교수님의 강의를 들은 지 4주 차지만, 이 교수님으로부터 꽤 많은 영감을 받았다.  내가 이 교수님에게서 마음에 드는 점은 두 가지이다. 첫째는 교수님이 학생들에게 지식을 전하는 방법이다. 교수님은 소박한 단어를 많이 사용한다. 볼때마다 알듯 말듯해서, 영어사전으로 내가 알고 있는 의미가 맞는지 확인해봐야 하는 영어단어들은, 교수님의 와닿는 번역을 보았을 때 확실히 기억에 오래 남는다. 사전에는 거절, 부인 등의 의미를 갖는 "repudiation"이라는 단어는 교수님의 "오리발"이라는 번역을 거친 후에, 완전히 내가 알고 있는 단..
새로운 터미널 환경에서 새로운 레포지토리(repository)라도 클론(clone)받으려고 하면 인증이 참 귀찮다. 웹에서 쓰는 비밀번호를 입력하면, 아래의 이미지처럼 비밀번호 인증(Password Authentication)이 종료되었다는 오류로 실패하게 되기 떄문이다. 따로 깃헙의 개인 액세스 토큰(Personal Access Token)을 발급받거나, SSH key를 생성해야 하는데, 토큰의 권한도 관리해줘야하고, 여러모로 복잡하다.  그래서 나는 Github CLI로 로그인하는 방법을 선호한다. Github CLI를 이용하면 여러가지 편리한 방법으로 터미널에서 로그인을 할 수 있다.brew install gh // macOSapt install gh // Linuxgh auth login이 대화형..
이 글은 Discrete Mathematics and its Applications by Kenneth H. Rosen, 8th Edition의 1.1~1.3 절을 재구성한 내용입니다. 이 글은 LaTeX 수식이 포함되어 있습니다. $\sum$  명제(Proposition)참/거짓을 판단할 수 있는 평서문(Declarative sentence) "x+5=10"은 명제가 아니다.  x의 값에 따라 참/거짓이 달라지므로, 문장만으로, 진위를 판단할 수 없기 때문이다. 나중에 다루지만, 이 문장은 predicate라고 할 수 있다. 명제를 부정(Negation)하면 새로운 명제를 만들 수 있다. 혹은, 두개 이상의 명제를 합쳐서 하나의 새로운 명제(compound proposition)를 만들 수 있다. 이 ..
이 글은 Computer Organization And Design: The Hardware/Software Interface, David A. Patterson and John L Hennessy 6th edition 중, Appdendix C: The Basics of Logic Design의 C.2~C.3를 읽고 재구성한 글입니다. 이 글 속의 이미지들도 이 책의 이미지를 사용했습니다. 이 글은 LateX 수식이 포함되어 있습니다. $ \sum $ ">이 글은 LateX 수식이 포함되어 있습니다. $ \sum $   컴퓨터 세상의 신호는 디지털(Digital)로 통한다. 디지털은 모든 신호를 두 가지로 표현한다. True, 1, asserted 등으로 표현하는 신호와 false, 0, deasser..
컴퓨터 보안의 속성은 CIA triad 와 AAA triad로 설명할 수 있다. CIA triad는 Confientiality(기밀성), Integrity(무결성),  Availability(가용성), AAA triad는 Assurance(보장성), Authenticity(진위여부), Anonymity(익명성) 을 포함한다.*CIA triad이 3가지 속성을 잘 갖춘 서비스가 보안이 튼튼한 서비스라고 할 수 있다.  Confidentiality(기밀성) 인증되지 않은 사람이 데이터를 읽지 못하게 해야함을 의미한다. 기밀성은 3가지 방법으로 구현될 수 있다. 첫째로 암호화(Encryption)는 대칭/비대칭 키를 이용하여 데이터의 내용을 숨긴다. 둘째로 인증(Authentication)은 유저의 신원을 확..
게시글 작성 화면을 구현하려면, WYSIWYG 에디터를 사용하게 된다. ChatGPT의 추천으로 나는 TinyMCE라는 에디터를 선택했다. 이 에디터를 이용해 게시판 작성 화면을 구현하면서, 이미지와 파일을 다루는 방법에 대해 내가 작업한 내용을 이 글에서 소개한다. 나도 대부분의 코드 작성을 claude-3.5-sonnet(cursor AI)이라는 친구에게 맡기고, 이후 생긴 버그들을 디버깅한 정도라, 코드에는 개선의 여지가 더 많을 수 있다. 1. 사진/파일 업로드 하기문제상황TinyMCE의 이미지업로더(ImageUploadPicker)와 파일업로더(FileUploadPicker) 기능을 활용하고자 한다면, 이미지/파일을 어딘가에 업로드하고, 그 업로드된 URL을 반환해주는 핸들러 함수가 필요하다. ..
결론부터 적자면 주민등록등본을 내니까 성공했다.Google 플레이스토어에 내가 만든 앱을 업로드하려면, 개발자 계정을 추가해야한다.일단 개발자 계정을 생성하는데에 25달러를 요구했고(하필 환율도 높을 때...), 주소지 입력, 결제계정 생성 등 꽤나 답답한 과정을 거친 후에 도착하는 최종관문이 바로 "본인인증"이다. 이 본인인증이 답답한 이유는 아래와 같다. 1. 실제 거주지의 전기/수도 요금 명세서나 은행 명세서 등의 서류를 요구한다.2. 캡쳐/스크린샷이면 안된다.3. 서류에 반드시 실제 본인의 이름과 주소지가 들어가 있어야한다.4. 90일 이내여야 한다.5. 아마 사람이 직접 승인하는 구조라, 근무일에만 승인된다. 처음에는 대충 되겠지 생각하고, 도시가스 명세서 화면을 캡쳐해서 보냈는데, 반려당했다...
약 한 달간 Cursor AI를 사용해보았습니다. 간단한 React 웹 페이지와 NestJS CRUD 서버, 그리고 React-Native 앱의 거의 개발 착수 단계에 사용하였습니다. 결론부터 말하자면, 새로운 프로젝트를 시작할 때에 있어서는 너무나도 편리하고, 압도적으로 생산성을 늘려줄 수 있는 도구라고 느꼈습니다. Gpt나 Github Copilot을 처음 경험했을 때보다도 큰 충격을 준 도구였습니다. 이 글에서는 Cursor AI에 대한 간단한 소개와 느낀 점들을 다룹니다. Cursor AI란Cursor AI는 VScode의 포크 프로젝트이며, 갖가지 AI 기능이 탑재되어 있습니다. 제가 주로 사용한 기능들은 아래와 같습니다.Tab - line 수정 제안코드를 작성하다보면 Cursor가 특정 라인의..
준별
'분류 전체보기' 카테고리의 글 목록