목록전체 글 (235)
개발새발
정처기 필기는 100점을 만점에 과목당 40점 이상, 전과목 평균 60점 이상이면 합격이다. 에타 컴공게를 보니까 다들 안 보고 갔다, 하루컷 했다 해서 이틀전에 전체적인 내용만 한번 쓱 훑어보고, 하루전에 기출 문제들을 풀어줬다. 1과목이랑 2과목은 완전 소프트웨어공학(+약간의 자료 구조) 내용이었고 3단원은 데이터베이스, 4단원은 전반적인 프로그래밍 언어와 정보통신공학(+약간의 리눅스), 5단원은 사이버보안개론 내용이었다. 데이터베이스랑 사이버보안개론 내용을 제외하면 다 우리 학교 컴공 전필이었기 때문에 완벽하게 기억은 못하더라도 대략적으로 무슨 내용인지는 알만한 내용이었다. 개념은 아래 유튜브로 1단원부터 5단원까지 한번 훑어줬다. 특히 소프트웨어공학 파트는 종강과 함께 잊어버렸기에(...) 한..
프로덕션 DB는 보안상 외부 인터넷에 직접 노출하지 않는 게 원칙이다. AWS RDS나 사내 DB에 일반적인 방법으로 DBeaver 접속이 거부되는 경험을 한 번쯤 해봤을 것이다. 이는 DB 서버에 공인 IP를 아예 할당하지 않거나, 방화벽으로 DB 포트(5432)를 막아두기 때문이다. 이 글에서는 PostgreSQL을 네이티브로 설치한 Ubuntu 서버에 SSH 터널링 + PEM 키 인증으로 DBeaver를 연결하는 전 과정을 다루려고 한다. [DBeaver (Mac)] │ │ SSH (포트 your_ssh_port) ▼ [Remote Server your_server_ip] ..
원래 노트북에서 개인 깃허브 계정만 사용하다가 가끔 재택을 하게 되면서 두 개의 GitHub 계정을 하나의 Mac에서 전환하면서 사용하는 방법을 찾아봤다. 환경 - macOS - Git - GitHub CLI (gh) 1. GitHub CLI 설치 brew install gh 2. 두 계정 모두 로그인 # 첫 번째 계정 로그인 gh auth login # 두 번째 계..
3달 동안 준비한 실험실 창업 TeX-Corps가 최종 합격했다! 창업 동아리조차 경험이 없기도 했고, 지원금 단위가 이렇게 큰 사업에 지원한 것도 처음이라 엄청 떨렸고, 시간도 정말 많이 쏟았다. 혹시 내년에 텍스코어를 지원할 후배들을 위해 후기를 남기려고 한다. 텍스코어(TeX-Corps)는 대학 및 연구소가 보유한 공공기술의 사업화를 촉진하기 위해 과학기술정보통신부가 주관하는 딥테크 실험실 창업 탐색 프로그램이다. 쉽게 말해 나라에서 지원해주는 연구실 창업으로, 미국 NSF의 아이코어(I-Corps)를 벤치마킹해서 석박사 연구원팀에게 교육, 멘토링, 시제품 제작비(약 2~3천만 원)를 지원해준다. 실험실 창업인만큼 기본적으로 EL은 석사과정생 이상이여야 한다. 여성 특화형은 학부생도 EL이 가능..
1. REST와 REST API의 개념REST(REpresentational State Transfer) 란 "분산 시스템"을 위한 HTTP 기반 소프트웨어 아키텍처를 의미한다. 쉽게 말해 웹 애플리케이션, 모바일 앱, 서로 다른 언어로 된 서버들이 HTTP라는 공통된 규격 안에서 자유롭게 통신할 수 있도록 도와주는 통역사 역할을 하는 API라고 이해하면 된다. 여기서 분산 시스템이란 독립된 컴퓨터들이 네트워크를 통해 연결되어 하나의 시스템처럼 움직이는 것을 말하는데, 이를 위해 표준화된 통신 방식이 필수적이다. REST는 크게 자원, 행위, 메시지라는 3가지 요소로 구성된다.자원(Resource): 우리가 접근하거나 조작할 대상이다. 예를 들어 "상품"이 자원이 된다. 보통 URI를 통해 고유한 식별자..
보통 운영 환경(Production)의 DB는 해킹 위험 때문에 외부 인터넷에서 접속할 수 있는 공인 IP(Public IP)를 아예 할당하지 않는다. 내가 회사 데이터베이스에 일반적인 방식으로 DBeaver에서 바로 접속이 거부당했던 것도 이 이유 때문이었다. 포트 포워딩은 내가 이미 AWS 권한(aws configure)을 가지고 있으니, 쿠버네티스라는 '관리자 통로'를 타고 들어가서 DB를 로컬로 끌어오는 것이다. 별도의 복잡한 방화벽 설정 없이도 안전하게 접속할 수 있다. 아래는 EKS(Amazon Elastic Kubernetes Service) 환경에 있는 PostgreSQL 데이터베이스를 로컬 PC에서 접속할 수 있도록 연결하는 방법이다. A. AWS CLI 설치 여부 확인 먼저 아래 ..
1. .yml 파일로 환경 복원하기conda env create -f environment.yml-f: 파일(file)을 지정한다는 의미 이 명령어는 파일 안에 적힌 name 항목을 읽어 자동으로 환경 이름을 설정하고 필요한 패키지들을 설치한다. 2. 다른 이름으로 환경 생성하기만약 파일에 적힌 이름 말고 다른 이름으로 환경을 만들고 싶다면 -n 옵션을 추가하면 된다. conda env create -f environment.yml -n 새로운환경이름3. 기존 환경 업데이트하기이미 만들어진 환경이 있는데, .yml 파일의 최신 내용으로 패키지를 동기화하고 싶을 때 사용한다conda env update -f environment.yml --prune--prune: 파일에 없는 패키지는 삭제하여 완벽하게 일..
#include int main(int argc, char *argv[]) { int a = 5, b = 3, c = 12; // 초기화 int t1, t2, t3; t1 = a && b; // 논리 AND 연산자, 두 피연산자가 모두 참(0이 아닌 값) 일 때 참(1)을 반환 // t1=1 t2 = a || b; // 논리 OR 연산자, 두 피연산자 중 하나라도 참이면 참(1) 을 반환 // t2=1 t3 = !c; // 논리 NOT 연산자, 피연산자가 참이면 거짓(0), 피연산자가 거짓이면 참(1)을 반환 // t3=0 printf("%d", t1 + t2 + t3); // 실행 결과 2 return 0;} 정답: 2 #include // 구조체 ..