최근 포스트
-
TIL: Today I Learn Log
TIL: Today I Learn Log 공부한 내용을 날짜 기준으로 간략하게 기록합니다. 2023년 3월 19일: PR: 해머스푼 단축키 개발(v0.21) - 활성화된 윈도우를 Chrome으로 옮기지 않은 채 미디어 컨트롤(재생/중단/앞으로/뒤로) 강의 실습중인 IDE에 커서를 고정한 채 서브 모니터에서 재생되는 강의를 재생/중단/앞뒤로 움직이기 위해 개발함 https://github.com/dpcalfola/hammerspoon_config/pull/3 20일: AWS EC2 Create instance Establishing an SSH connection with RSA Install docker engine 21일: Study Rust basic syntax. Complete Rust lectu..
2023.04.14
-
Task-driven Study Log - 개발/공부 티켓(=Task) 기록 일지 (기록중단)
블로거의 개발/공부 티켓(=Task) 기록 일지 * 이 기록은 2023-01-22부터 시작합니다. Task-driven Study Log 방법론 이전의 기록에 대한 내용과 링크는 아래 접은 글 안쪽에 있습니다. 더보기 Task-driven Study Log 방법론 이전에는 트위터 개발자 계정에서 주간 목표 제시와 달성 현황을 매주 트윗하며 메인트윗 타래로 엮어 사용했습니다. https://twitter.com/dpcalFola/status/1480332217956339720?s=20 트위터에서 즐기는 Fola Flor 🌊 “1월 셋째 주 목표 (1월 10일 ~ 16일) - git repository 정리 - 매일 백준 1문제 이상 - 프로그래머스 시작 : 1문제 이상 풀어보기 - my web room 페..
2023.03.21
-
개발일지_13) TDS Log 포스팅 스프레드 시트로 옮길까..?
Task-driven Study Log 방법론이 참 마음에 든다. 그런데 복잡도가 너무 심하게 올라가고 있다. 단기간에 티켓 코드를 관리하는 api 프로젝트가 끝나지 않을 것 같고 가고 싶은 회사에 입사 지원 준비를 서둘러야 할 것 같아서 구글 스프레드 시트로 옮길까 고민 중 아니면 DB 테이블 하나에 SQL문으로 다 집어넣고 조회하는 정도로만 빨리 구현할까 내 작업 내용들이 블로그 방문자들에게 쉽게 노출되는 현재 상황이 마음에 들지만서도 아무튼 현재 리스트들이 너무 정신이 없어서 조금 마음이 아프다. 언제나처럼 하고 싶은 건 많고 시간은 부족하네
2023.02.28
-
Hammerspoon, lua ) 해머스푼 init.lua v0.206a
Hammerspoon, lua ) 해머스푼 init.lua v0.206a 이전글/관련글 2022.04.24 - [기술 기록/기타] - 카라비너(Karabiner-Elements) caps lock 커스텀 키 매핑, json 편집 2022.06.29 - [기술 기록/기타] - Hammerspoon, lua ) 해머스푼 코딩 0. Github Link https://github.com/dpcalfola/hammerspoon_config GitHub - dpcalfola/hammerspoon_config Contribute to dpcalfola/hammerspoon_config development by creating an account on GitHub. github.com 위의 링크를 타고 들어가시면 ..
2023.02.19
-
(Eng) error) Docker) Solving the Psycopg2 Installation Issue in Docker Containers
Docker ) Solving the Psycopg2 Installation Issue in Docker Containers (Eng) Note: This article was written by ordering the chatGPT to write with my idea, and I refined and completed it. 0. When working with Python applications in a Docker container, one common issue you might face is the failure to install the psycopg2 pip package. This issue may arise when attempting to install the package with..
2023.02.11
-
개발일지_12) 나의 첫 깃허브 업적(Github Achievements)
개발일지_12) 나의 첫 깃허브 업적(Github Achievements) 0. 어느 날 내 깃허브 페이지에 못 보던 아이콘이 나타났다. 왜일까 궁금해서 마우스를 올려보니 Pull Request 가 Merge 되는 조건으로 해금되는 업적이었다. 1. 얼마 전, 코드를 여러 브런치를 오가며 코드를 작성하다가 커밋 푸시한 코드의 마크다운 파일이 웹에서 잘 보이는지 확인하고자 깃허브 작업 브런치의 웹 페이지를 열었다. 그날따라 상단에 Compare & pull request라는 버튼이 보였다. 그동안 PR은 서로 다른 계정끼리만 가능하다고 생각했었으나, 자기 소유의 레파지토리에도 스스로 PR 하고 Merge 할 수 있다는 것을 알게 되었다. 좋은 기회라고 생각했다. 마치 실제로 다른 오픈소스 프로젝트에 기여하..
2023.02.04
-
git) CLI branch 정리
1. branch 생성 git branch 2. branch 목록 확인 git branch 3. checkout (이동) git checkout 4. merge (병합) git checkout git merge 결과: 에 의 변경 사항이 반영된다 5. Delete branch git branch -d 6. Rename branch git branch -m - After then. This command make rename on remote repository as well git push origin : * 변경/추가 이력 2022-04-22: 1번~4번 작성 2023-01-19: 5번~6번 작성
2023.01.19
-
개발일지_11) 건강 문제로 코딩을 쉬고 있습니다
0. 건강 문제로 코딩과 공부와 취업준비 모두 쉬고 있습니다. 8월 말부터 한 달 정도, 그리고 10월 20일 즈음부터 지금까지 깃허브에 잔디가 없는 이유입니다. 지금은 치료와 회복에 집중하고 있어요. 1. 추간판 탈출증 본래 허리가 건강하지 않았습니다. 코딩을 시작하면서 컴퓨터 앞에 앉아있는 시간이 점점 길어졌고 허리의 통증이 점점 심해짐을 느껴 올해 중반기부터는 줄곧 치료를 병행하고 있었습니다. 그러나 결국에는 허리가 버티지 못하고 무너졌어요. 앉거나 서있지 못하고 지팡이가 없으면 걷지도 못하게 되었습니다. 긴 예약대기 끝에 mri 촬영을 했고 4개의 디스크에 문제가 있음을 확인했습니다. 특히 5번 척추와 1번 천추 사이의 디스크가 파열-탈출하여 신경을 많이 누르고 있는 상태입니다. 파열된 디스크를 ..
2022.11.16
-
DRF api 서버 만들기 진행 기록
1. 깃허브 레파지토리 링크 https://github.com/dpcalfola/fola_api_server 2. 진행 기록 Django settings.py core_app (개발중) Custom user model (계획) Custom superuser model (계획) Custom admin page for custom user model (계획) Custom django command (계획) wait for db to be available (계획) docker-compose docker-compose 와 Dockerfile 연동 CI github action을 이용한 CI 환경 구축 github secrets 을 이용하여 Dockerhub 로그인 steps: Django test flake8..
2022.09.30
-
2022.09.21 - Django poj.c A4) 개발과정 정리 페이지
Howdimt - 주류 정보 공유 웹 애플리케이션 바로가기: http://www.howdimt.xyz/ Github: https://github.com/dpcalfola/cocktail_how_did_i_make_this Web Framework: Python Django DB: postgreSQL Web Server: Nginx Deploy: 개인 NAS의 Docker 1. 프로젝트 진행 과정 시간 순으로 보기 더보기 2022.04.18 - Django poj.c A0 ) 진행과정 기록에 관하여 - 0일차 2022.04.19 - Django poj.c C0 ) DB 선택 - 1일차 2022.04.20 - Django poj.c B0 ) Bootstrap5 설치 및 base.html 작성 - 2일차 20..
2022.09.21
-
DRF stu.d.a A0) DRF + TDD + CI
0. 정말 오랜만의 블로그 포스팅 한동안 새 글이 없었음에도 일일 방문자가 꽤 많아 기분이 좋았다. 1. 근래에는 Django REST framework를 이용한 API 서버 개발을 공부하고 있다. 코드: https://github.com/dpcalfola/study_django_rest_framework 2. 구조 * 코드는 TDD(Test Driven Development)에 입각하여 작성 * Docker-compose를 사용하여 모든 컨테이너를 통합, 제어하여 빌드 * CI(Continus Integration) 구현 - Github Action을 통해 매 git push 때마다 빌드, Test Code, Lint 등을 체크 3. 문제 해결 일화 - env 숨김 파일을 Github Action에 적..
2022.08.29
-
파이썬PS) 백준 14729 칠무해 - 최대힙 사용
파이썬PS) 백준 14729 칠무해 - 최대힙 사용 문제 링크 : https://www.acmicpc.net/problem/14729 제출 코드: https://www.acmicpc.net/source/45496454 14729번: 칠무해 조(Joe)는 중앙대학교 교수이고, 논리회로 설계 과목을 담당하고 있다. 그는 수업을 하면서 7명의 학생을 제외한 나머지 학생들에게 좋은 학점을 주겠다고 약속을 하였다. Joe 교수님을 돕기 위해 www.acmicpc.net 0. 파이썬으로 풀 경우 단순하게 모든 입력값을 리스트에 append 하고 정렬하여 7개만 출력하는 방법으로도 제한시간내에 통과된 제출이 있었다. 그러나 학생 수의 입력 범위가 최대 10,000,000으로 매우 크고 출력 값은 최솟값 7개만 필요했..
2022.07.04
-
프로젝트 기록
Howdimt - 주류 정보 공유 웹 애플리케이션 바로가기: http://www.howdimt.xyz/ Github: https://github.com/dpcalfola/cocktail_how_did_i_make_this Web Framework: Python Django DB: postgreSQL Web Server: Nginx Deploy: 개인 NAS의 Docker 1. 프로젝트 진행 과정 시간 순으로 보기 더보기 2022.04.18 - Django poj.c A0 ) 진행과정 기록에 관하여 - 0일차 2022.04.19 - Django poj.c C0 ) DB 선택 - 1일차 2022.04.20 - Django poj.c B0 ) Bootstrap5 설치 및 base.html 작성 - 2일차 20..
2022.07.03
-
Hammerspoon, lua ) 해머스푼 코딩
Hammerspoon, lua ) 해머스푼 코딩 관련글 2022.04.24 - [기술 기록/기타] - 카라비너(Karabiner-Elements) caps lock 커스텀 키 매핑, json 편집 (2023-02-19 수정함) 다음글 2023.02.19 - [기술 기록/기타] - Hammerspoon, lua ) 해머스푼 init.lua v0.206a 위 링크의 포스팅에 사용방법이 안내되어 있는 기능적으로 개선된 해머스푼 코드가 있습니다. 0. 해머스푼 init.lua 코드의 대다수는 '기계인간' 님의 Hammerspoon 블로그를 참고하여 작성하였습니다. 감사의 마음을 전합니다. '기계인간' 님의 Hammerspoon 블로그 포스트 주소 https://johngrib.github.io/wiki/hamm..
2022.06.29
-
Toy.didIPass 1) 객체지향적 접근 - 추상화/캡슐화
토이 프로젝트 > Toy poj.pf 1) 자격증 과락, 합격, 불합격 계산 프로그램 (Ver. 1.0) 0. 코드 링크: https://github.com/dpcalfola/toy_projects/tree/main/did_i_pass 1. 객체지향 프로그래밍의 특징 객체지향 프로그래밍의 특징에는 캡슐화, 상속, 추상화, 다형성 4가지가 있다. 이번 토이 프로젝트는 상속과 다형성을 적용시킬 만큼 복잡하지 않아서 제외하고, 추상화와 캡슐화 관점에서 'Subject' 클래스를 해석해 보았다. 2. 추상화 1) 추상화 '과목'을 하나의 클래스(class Subject:)로 만들고 각 과목을 객체로 생성, 저장한다. 자격증 시험의 '과목'은 현실 세계의 관점으론 수없이 많은 의미가 될 수 있다. 수 없이 많은 ..
2022.06.19
-
Toy.didIPass 0) 자격증 과락, 합격, 불합격 계산 프로그램
토이 프로젝트 > Toy poj.pf 0) 자격증 과락, 합격, 불합격 계산 프로그램 (Ver. 1.0) 0. 코드 링크: https://github.com/dpcalfola/toy_projects/tree/main/did_i_pass 대화형 텍스트 방식의 프로그램. 문제의 개수와 맞은 문제 수 또는 틀린 문제 수를 입력하면 백분율 환산 점수, 과락 여부, 합격여부를 출력한다. mode1 : 총 문제수와 맞은(또는 틀린) 문제 개수를 입력받아 합격 여부 출력 mode2 : 세부 과목의 문제수와 맞은(또는 틀린) 문제 개수를 가각 입력받아 과락 여부와 종합 합격 여부 출력 프로그램 실행 결과 화면 (하늘색 숫자는 유저가 입력한 값) 1. 요즘 자격증 시험에 많이 응시하고 있다 가채점 결과로 과락, 합격, ..
2022.06.19
-
개발일지_10) 국비 수료 후 근황
12월 27일 ~ 5월 25일 java 국비 과정 수료. 6월 말 까지는 개발과 관련 없는 개인 일정이 잡혀 있어서 적극적인 취업 준비나 구직 활동이 불가능. 알고리즘 문제풀이 하루 한문제 이상, 자격증 시험 위주로 공부. 5월 28일 SQLD 6월 11일 리눅스 마스터 2급 2차 6월 18일 정보처리 기능사 시험 하나 당 준비기간 5일 이내로 벼락 치는 중.
2022.06.08
-
Django poj.c E5) CSRF token에 대하여, 토큰 검증 문제 해결 - 프로젝트 마감 추가글 2번
Code E - Server 5번 글, 6월 1일 (수) 자격증 시험 준비로 미뤄 두었던 프로젝트 34~35일 차 (5월 21일~22일) 프로젝트 진행 과정 기록 ( 프로젝트 마감 추가글 2번 ) 1. Error 상황 CSRF 토큰을 사용하는 form 태그의 post 요청 시 접근하고 있는 호스트가 신뢰할 수 있는 origins 목록에 없다는 Debug 메시지와 함께 403 forbidden 에러가 발생하였다. 2. CSRF 토큰? Django Framework는 form tag로 데이터를 전송할 때 필수로 {% csrf_token %} 코드를 요구한다. CSRF는 Cross-site Request Forgery의 약자이다. 사이트 간 위조 요청..
2022.06.01
-
Django poj.c E4) Django / nginx 도커 컨테이너 간 정적 파일 공유 - 프로젝트 마감 추가글 1번
Code E - Server 4번 글, 5월 31일 (화) 자격증 시험 준비로 미뤄 두었던 프로젝트 34~35일 차 (5월 21일~22일) 프로젝트 진행 과정 기록 ( 프로젝트 마감 추가글 1번 ) 0. 컨테이너 간 정적 파일(static / media files) 공유 과정 niginx 웹 서버가 정적 파일 요청을 처리하기 위해서는 Django 컨테이너의 정적 파일을 nginx 서버와 동기화하는 작업이 필요하다 1. Django 컨테이너 세팅 Django 컨테이너에서 정적 파일을 한 곳에 모은다 python manage.py collectstatic 정적 파일은 setting.py의 STATIC_ROOT에 명시된 경로로 모두 모이게 된다. 2. nginx 컨테이너 세팅 ngnix.conf 파일에 정적 ..
2022.05.31
-
error, 파이참버그) ValueError: invalid literal for int() with base 10: '' / 파이참 인풋 버그
error, 파이참, PyCharm) ValueError: invalid literal for int() with base 10: '' / 파이참 인풋 버그 0. 요약 : PyCharm 2022.1.1 의 알려진 버그 PY-54238 - 콘솔에서 인풋 값을 입력받을 때 두 번째 인풋이 강제로 empty string로 변환되는 현상 해결방법: Run > Run/Debug Configurations > Execution > Emulate terminal in output console > 체크박스 체크 (2022/06/02 추가 내용) 정식 릴리즈된 PyCharm 2022.1.2 업데이트로 버그 픽스됨 1. 버그 내용 콘솔에서 인풋 값을 키보드로 직접 입력받을 때 두 번째 인풋이 강제로 empty strin..
2022.05.30
인기글
-
error) git) 리모트 레파지토리 끊고 다시 연결하기
// 연결되어 있는 원격 레파지토리 확인 $ git remote -v // 원격 레파지토리와 연결 제거 $ git remote remove origin // 연결이 잘 해제 되었는지 다시 확인 $ git remote -v // 새로운 레파지토리로 깃 연결 $ git remote add origin // 새 레파지토리로 push 할때 발생하는 error 메세지 // // fatal: The current branch main has no upstream branch. // To push the current branch and set the remote as upstream, use // // git push --set-upstream origin main // 깃에서 제시한 위 명령어 입력 (원격 저장소..
2022.03.27
-
Hammerspoon, lua ) 해머스푼 init.lua v0.206a
Hammerspoon, lua ) 해머스푼 init.lua v0.206a 이전글/관련글 2022.04.24 - [기술 기록/기타] - 카라비너(Karabiner-Elements) caps lock 커스텀 키 매핑, json 편집 2022.06.29 - [기술 기록/기타] - Hammerspoon, lua ) 해머스푼 코딩 0. Github Link https://github.com/dpcalfola/hammerspoon_config GitHub - dpcalfola/hammerspoon_config Contribute to dpcalfola/hammerspoon_config development by creating an account on GitHub. github.com 위의 링크를 타고 들어가시면 ..
2023.02.19
-
선형대수_0A) 수학 수식 기록을 위한 LaTeX
하고 싶어서 하는 공부 - 선형대수 1. 선형대수를 공부하기로 했다. 일종의 취미 생활이자 지적 욕망을 채우는 수단이고 스트레스 해소가 목적이다. 종이에 펜으로 적고 풀어놓은 기록은 쉽게 잊히기에 디지털 문서로 남기고 블로그에 포스팅하면 좋겠다는 생각을 했다. 2. 첫 번째 장벽 나는 수학 수식을 디지털로 남겨본 경험이 전무했다. 몇 번의 검색으로 LaTeX라는 시스템을 알게 되었다. 논문, 출판 등에서 수식, 그래프, 다이어그램을 그리는 도구라고 한다. 트위터에서 LaTeX 가 부담스러우면 마크다운을 사용하는 방법도 있다는 조언을 받았다. 생각보다 어렵고 큰 시스템인가 싶었지만. 나는 새로운 기술을 쉽게 쉽게 익히는 편이니까. (마크다운과 티스토리 상성이 안 좋기도 하고) 3. 일단, 티스토리 에디터에..
2022.04.13
-
개발일지_13) TDS Log 포스팅 스프레드 시트로 옮길까..?
Task-driven Study Log 방법론이 참 마음에 든다. 그런데 복잡도가 너무 심하게 올라가고 있다. 단기간에 티켓 코드를 관리하는 api 프로젝트가 끝나지 않을 것 같고 가고 싶은 회사에 입사 지원 준비를 서둘러야 할 것 같아서 구글 스프레드 시트로 옮길까 고민 중 아니면 DB 테이블 하나에 SQL문으로 다 집어넣고 조회하는 정도로만 빨리 구현할까 내 작업 내용들이 블로그 방문자들에게 쉽게 노출되는 현재 상황이 마음에 들지만서도 아무튼 현재 리스트들이 너무 정신이 없어서 조금 마음이 아프다. 언제나처럼 하고 싶은 건 많고 시간은 부족하네
2023.02.28
-
선형대수_01) 선형방정식을 표현하는 세가지 방법
선형방정식을 표현하는 세 가지 방법 Row picture Column picture Matrix form 1. Row picture 수평 관점 방정식의 나열 하는 방법 방정식을 만족하는 모든 지점을 그래프 위에 표시했을 때 그래프가 만나는 지점(방정식을 동시에 만족하는 점) => 해 \begin{cases} 2x+y &=0\\-x+2y &=-3 \end{cases} 그래프 그래프 코드 https://github.com/dpcalfola/study_matplotlib/blob/main/linear_algebra_study/linear_algebra_01/equation_01.py 2. Column picture (중요!) 수직 관점 Linear combination of the colemns 열 혹은 벡터..
2022.04.24
-
카라비너(Karabiner-Elements) caps lock 커스텀 키 매핑, json 편집
1. 제가 사용하고 있는 카라비너 Complex modifications 세팅 json 파일입니다. 코드 깃허브 링크: https://github.com/dpcalfola/Karabiner_custom_json/blob/main/fola_custom.json 2. Caps Lock 버튼 조합으로 단축키를 만들어 사용하고 있습니다. caps + hjkl : 방향키 caps + space : 한영전환 (기본 한영전환을 ctrl + space로 맞춰주셔야 동작합니다) caps + n : backspace caps + m : delete 3. 사용 방법 첨부된 json 파일을 ~/.config/karabiner/assets/complex_modifications 폴더 안에 넣으면 Complex modificat..
2022.04.24
-
선형대수_0A_1) LaTeX 설치 및 환경 구축
이전 글) 2022.04.13 - [하고 싶어서 하는 공부/선형대수] - 선형대수_0A) 수학 수식 기록을 위한 LaTeX 1. LaTeX 코드를 편하게 작성할 수 있는 방법과 환경을 찾았다. 당분간 수식과 그래프를 컴퓨터로 표현하는데 어려움은 없을 것 같다. 꽤 만족스럽다. 아래 순서를 따라가면 쉽게 LaTeX 환경을 구축할 수 있다. 2. 초간단 환경 구축 - 웹 LaTeX 편집기를 이용 tutorialspoint - LaTeX Equation Editor https://www.tutorialspoint.com/latex_equation_editor.htm 작성한 코드의 결과물을 실시간으로 보여준다. 가볍게 수학 수식 코드만 작성할 때는 위의 사이트로도 충분. 페이지 아래쪽에 클릭 한 번으로 코드 자..
2022.04.18
-
개발일지_9) 백준 골드 달성. 자료구조가 너무 재밌어서 큰일😆😆
1. 백준 티어 골드를 달성했다. 처음으로 문제 푼 날 기준으로는 약 5개월. 코딩을 처음 해본 날 그러니까, html 문서에 hello world를 찍은 날 기준으로는 약 8개월. 배경지식 없이 시작한 것 치고는 꽤 빠른 편이지 않을까..? 2. 요즘 자료구조가 너무 재밌다. 자료구조란 말을 처음 들은 순간을 기억한다. java에서 원시 타입과 참조 타입의 차이에 대한 수업 내용이었다. 여기서 처음으로 스택과 힙이라는 용어를 배웠다. 그 뒤론 그래프 문제 해결을 목표로 공부하면서 자연스레 하나씩 찾고 이해하고 사용하게 되었고. 그래프를 코드로 표현하는 방법을 깨우치니까 갑자기 dfs, bfs, 재귀, DP, 백트래킹 등등의 알고리즘 기법들의 코드가 눈에 들어오기 시작했다. 백준 골드 달성의 1등 공신 ..
2022.04.12
-
git) 기본 브랜치(branch) 이름 바꾸기 (master -> main)
1. 로컬에서 git init 명령어를 이용해 repository를 생성했을 때 기본 브랜치 이름이 main 이 아닌 master로 생성될 수 있다. 현재 github에서 새로 생성하는 repository는 기본 브랜치가 main 이기 때문에 기본 branch를 master 로 생성한 git을 깃허브와 remote 연결할 경우 로컬의 master 가 아닌 main 이 default로 설정되기 때문에 번거롭고 수고스러운 상황이 발생한다. (repository 설정에서 default branch를 교체할 수 있다. 또한 이름도 바꿀 수 있다.) 2. 과거에는 기본 브랜치 이름을 master 로 많이 사용하였으나, IT 산업에서 관습적으로 사용해 왔던 master/ slave 용어는 인종차별적인 의미로 사용..
2022.03.30
-
NAS_02) 개념 용어 키워드 정리
NAS 서버를 운용하기 시작하면서 새로 배운 용어들, 키워드, 개념이 너무 많았다. 정리되는 대로 계속 추가할 예정. * IP - Internet Protocol - 송신 호스트와 수신 호스트가 패킷 교환 네트워크에서 정보를 주고받는 데 사용하는 규약 - OSI 네트워크 계층에서 호스트의 주소지정과 패킷 분할 및 조립 기능을 담당 - IP 와 IP 주소는 다른 개념 * IP 주소(IP Address = Internet Protocol Address) - 컴퓨터 네트워크에서 장치들이 서로 인식/통신하기 위해 사용하는 특수한 번호 * 도메인 (Domain) - IP 주소는 숫자로 이루어져 있어 외우기가 어렵기 때문에 문자열 주소를 대신 사용. - 도메인 주소를 입력하면 DNS가 문자열 주소를 IP 주소로 해..
2022.02.27
-
DRF stu.d.a A0) DRF + TDD + CI
0. 정말 오랜만의 블로그 포스팅 한동안 새 글이 없었음에도 일일 방문자가 꽤 많아 기분이 좋았다. 1. 근래에는 Django REST framework를 이용한 API 서버 개발을 공부하고 있다. 코드: https://github.com/dpcalfola/study_django_rest_framework 2. 구조 * 코드는 TDD(Test Driven Development)에 입각하여 작성 * Docker-compose를 사용하여 모든 컨테이너를 통합, 제어하여 빌드 * CI(Continus Integration) 구현 - Github Action을 통해 매 git push 때마다 빌드, Test Code, Lint 등을 체크 3. 문제 해결 일화 - env 숨김 파일을 Github Action에 적..
2022.08.29
-
Hammerspoon, lua ) 해머스푼 코딩
Hammerspoon, lua ) 해머스푼 코딩 관련글 2022.04.24 - [기술 기록/기타] - 카라비너(Karabiner-Elements) caps lock 커스텀 키 매핑, json 편집 (2023-02-19 수정함) 다음글 2023.02.19 - [기술 기록/기타] - Hammerspoon, lua ) 해머스푼 init.lua v0.206a 위 링크의 포스팅에 사용방법이 안내되어 있는 기능적으로 개선된 해머스푼 코드가 있습니다. 0. 해머스푼 init.lua 코드의 대다수는 '기계인간' 님의 Hammerspoon 블로그를 참고하여 작성하였습니다. 감사의 마음을 전합니다. '기계인간' 님의 Hammerspoon 블로그 포스트 주소 https://johngrib.github.io/wiki/hamm..
2022.06.29
-
Toy.didIPass 0) 자격증 과락, 합격, 불합격 계산 프로그램
토이 프로젝트 > Toy poj.pf 0) 자격증 과락, 합격, 불합격 계산 프로그램 (Ver. 1.0) 0. 코드 링크: https://github.com/dpcalfola/toy_projects/tree/main/did_i_pass 대화형 텍스트 방식의 프로그램. 문제의 개수와 맞은 문제 수 또는 틀린 문제 수를 입력하면 백분율 환산 점수, 과락 여부, 합격여부를 출력한다. mode1 : 총 문제수와 맞은(또는 틀린) 문제 개수를 입력받아 합격 여부 출력 mode2 : 세부 과목의 문제수와 맞은(또는 틀린) 문제 개수를 가각 입력받아 과락 여부와 종합 합격 여부 출력 프로그램 실행 결과 화면 (하늘색 숫자는 유저가 입력한 값) 1. 요즘 자격증 시험에 많이 응시하고 있다 가채점 결과로 과락, 합격, ..
2022.06.19
-
Django poj.c E5) CSRF token에 대하여, 토큰 검증 문제 해결 - 프로젝트 마감 추가글 2번
Code E - Server 5번 글, 6월 1일 (수) 자격증 시험 준비로 미뤄 두었던 프로젝트 34~35일 차 (5월 21일~22일) 프로젝트 진행 과정 기록 ( 프로젝트 마감 추가글 2번 ) 1. Error 상황 CSRF 토큰을 사용하는 form 태그의 post 요청 시 접근하고 있는 호스트가 신뢰할 수 있는 origins 목록에 없다는 Debug 메시지와 함께 403 forbidden 에러가 발생하였다. 2. CSRF 토큰? Django Framework는 form tag로 데이터를 전송할 때 필수로 {% csrf_token %} 코드를 요구한다. CSRF는 Cross-site Request Forgery의 약자이다. 사이트 간 위조 요청..
2022.06.01
-
error, 파이참버그) ValueError: invalid literal for int() with base 10: '' / 파이참 인풋 버그
error, 파이참, PyCharm) ValueError: invalid literal for int() with base 10: '' / 파이참 인풋 버그 0. 요약 : PyCharm 2022.1.1 의 알려진 버그 PY-54238 - 콘솔에서 인풋 값을 입력받을 때 두 번째 인풋이 강제로 empty string로 변환되는 현상 해결방법: Run > Run/Debug Configurations > Execution > Emulate terminal in output console > 체크박스 체크 (2022/06/02 추가 내용) 정식 릴리즈된 PyCharm 2022.1.2 업데이트로 버그 픽스됨 1. 버그 내용 콘솔에서 인풋 값을 키보드로 직접 입력받을 때 두 번째 인풋이 강제로 empty strin..
2022.05.30
-
Django poj.c E3) 프로젝트 서버 진척 내역 - 33일차
Code E - Server 3번 글, 프로젝트 33일 차 (금) 33일 차 프로젝트 서버 진척 내역 1. 파이썬 패키지 pip freeze > requirements.txt pip install -r requirements.txt 사용된 python 패키지 목록을 만들고 그 목록을 이용하여 서버 컨테이너에 패키지를 설치 2. gunicorn 설치 gunicorn은 웹 서버와 장고 애플리케이션을 연결해주는 인터페이스이며, 웹 페이지가 요청하는 동적 로직을 장고로부터 전달한다. 서버 컨테이너 내부에서는 이제 python manage.py runserver 0.0.0.0:포트번호 대신 gunicorn --bind 0.0.0.0:포트번호 config.wsgi:application 명령어를 이용해 웹 애플리케이..
2022.05.21
-
Django poj.c E2) 실패한 모든 시도의 원인은 방화벽이었다 - 32일차
Code E - Server 2번 글, 프로젝트 32일차 (목) 0. 해결 방법 Docker 가 사용하는 172번으로 시작하는 IP의 nas 방화벽 개방 (default bridge - 172.17.0.1~ , custom bridge - 172.18.0.1~ ) 1. 기존에 시도했던 Docker in docker 가 작동하지 않았던 이유도, 우분투 컨테이너에 정상적으로 설치했던 도커 엔진이 작동하지 않았던 이유도, 도커 브릿지에 묶여 있는 컨테이너 사이에 통신이 불가능했던 이유도, 그 외에 수없이 생성되었다 삭제된 컨테이너와 이미지들 모두가, 그 모두의 원인은 단 하나였다. 그 한 가지 원인을 깨닫는데 하루 해결하는데 하루가 걸렸다. 2. 원인 22번 포트를 이용한 ssh 접속이나, DB와 연동하여 레..
2022.05.21
-
Django poj.c E1) Docker In Docker 는 포기 - 31일차
Code E - Server 1번 글, 프로젝트 31일차 (수) 1. nas의 터미널과 종일 씨름했다. docker in docker는 포기하는 것으로 결정 docker hub의 dind(docker in docker) 이미지의 여러 태그들을 시도해 보았으나 모두 컨테이너 밖으로 인터넷 연결조차 되지 않아서 실패했다. 지푸라기 잡는 심정으로 Ubuntu 이미지를 unminimize 하고 각종 업데이트와 유틸들을 모두 설치한 후 컨테이너 위에 리눅스 도커 엔진을 올려 보려 시도했다. 설치는 오류 없이 잘 마무리되었으나 엔진을 start 할 수가 없었다. 2. nas의 ssh 터미널을 이용하여 docker를 cli 환경에서 사용할 수 있게 되었으니 나스 ssh가 하나의 클라우드 인스턴스 컴퓨터인 것처럼 간주..
2022.05.19
-
Django poj.c D1 ) 금요일, 3주차 중간 발표, ORM - 19일차
Code D 발표 1번 글, 프로젝트 19일차 1. 3주차 중간발표를 했다. 내 프로젝트와 관련한 이야기는 짧게 하고 ORM 에 대해 소개하는 내용을 중점적으로 담았다. 새벽까지 자료 만드느라 조금 피곤했지만 만족. 2. 발표 자료를 첨부
2022.05.06
-
Django poj.c B6) error) blank input ValueError 해결 - 10일차
Code B Django 6번 글, 프로젝트 10일차 (수) # 발생한 문제와 관련한 이전 글 링크 2022.04.26 - [프로젝트/Django - How Dimt?] - Django poj.c B5 ) 주류가격정보 테이블 구현 / 현재 봉착한 문제 - 9일차 1. html의 form태그의 POST방식으로 레코드를 생성하는 코드에서 blank=True, null=True로 지정했던 field에 input value 가 비어 있는 상태(blank)로 summit 했을 때 원하지 않는 ValueError 가 발생했다. blank=True 가 있으니 유효성 검사는 통과했어야 하고 null=True 기 때문에 DB에 비어있는 값이 들어갔어야 했다. 왜일까..? 2. 같은 상황의 스택오버플로우 질문 글에는 다음..
2022.04.27