일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 항해
- 파이썬 클래스
- 주니어개발자멘토링
- EnvCommandError
- Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
- 백준
- Til
- 99클럽 #99일지 #코딩테스트 #개발자스터디 #항해 #til
- cp949
- 파이썬 sep
- 항해99
- 파이썬 int()
- vscode cp949
- 주니어개발자역량강화
- print("""
- MomentumParameters
- not a git repository
- 99클럽
- fatal:not a git repository
- 파이썬 |
- 개발자사이드프로젝트
- 코딩부트캠프후기
- 코딩테스트
- 10430번
- print sep
- 개발자스터디
- 파이썬
- 파이썬 map 함수
- 99일지
- 항해플러스
- Today
- Total
목록분류 전체보기 (104)
선발대
2010번: 플러그 (링크) 생각해보면 간단하다. 전체 멀티탭의 플러그 개수를 입력 받고 거기에 각각의 멀티탭을 연결하는 개수를 빼주면 된다. import sysinput = sys.stdin.readlinen = int(input())multitaps = [int(input()) for _ in range(n)]print(sum(multitaps)-(n-1))
1309번: 동물원 (링크) 점화식 규칙을 찾지 못해서 다른 풀이를 참고했다. DP로 작게 쪼개서 생각하면 됨!n = 1, 2 인 경우에만 초기에 설정해주고 그 다음부터는 그 직전에 추가하면 된다. n = 10마리: 11마리: 2총합: 3 n = 20마리: 11마리: 42마리: 2총합: 7 n = 30마리: 11마리: 62마리: 83마리: 2총합: 17 n = 40마리: 11마리 82마리: 183마리: 124마리: 2총합: 41 import sysinput = sys.stdin.readlinen = int(input())dp = [0] * 100001dp[1], dp[2] = 3, 7for i in range(3, n+1): dp[i] = (dp[i-1] * 2 + dp[i-2]) % 9901pri..
15700번: 타일 채우기 4 (링크)엄청 간단한 문제였다. 큰 문제점은 없었고 쉽게 해결할 수 있었다.생각해보면 주어진 입력값으로 만들어지는 배열은 항상 직사각형 또는 정사각형이다.따라서 2 x 1, 1 x 2 타일로 채우려면 그냥 그 입력값으로 받은 직사각형 배열 개수를 2로 나누어 주면 된다. 내일도 차근차근 풀어봐야겠다. import sysinput = sys.stdin.readlinen, m = map(int, input().split())print(n * m // 2)
드디어 6월부터 8월까지 좌충우돌 직장인 팀 프로젝트가 끝났다. 와 이제 잘 수 있다사실 그동안 회고를 거의 안 쓰고 있었는데 이번에 최종 회고를 적어보려 한다.확인해보니 블로그에 적은 회고가 작년 5월이었다.노트에 일정이랑 그 날 배운 내용을 따로 정리하다보니 시간이 흘렀다. 어쨌든 어느새 취업을 해서 이제 딱 1년차가 된 파이썬 백엔드 개발자가 되었다.처음에 어떻게 공고를 보게 되었는지 기억은 안 나는데 마침 항해 플러스 공고를 보게 되었고, 찾아보니까 커리큘럼이 아래와 같았다. 현재 스타트업에 재직 중인데 미리 CI/CD, 모니터링 시스템 구축 등을 배워두면 나중에도 잘 사용할 수 있을 것 같았다. 항해 플러스는 팀으로 프로젝트를 진행한다. 사전 설문을 통해 스파르타 측에서 팀 배정을 해준다.첫 O..
1강 (1) 강의소개 강의 목표 운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서, 모든 컴퓨터 시스템의 필수적인 부분임. 본 강좌에서는 이와 같은 운영체제의 개념과 역할, 운영체제를 구성하는 각 요소, 그 알고리즘의 핵심적인 부분에 대해 기초부터 학습함. 강의 내용 운영체제 개요, 컴퓨터시스템의 구조, 프로세스 관리 CPU 스케줄링, 병행 제어, 데드락, 메모리 관리, 가상 메모리 파일 시스템, 입출력 시스템, 디스크 관리 운영체제란 무엇인가? 운영체제(Operating System, OS)란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 하드웨어에 직접 접근하지 않고 운영체제와 인터페이스하면 된다. 협의의 운영체제(커널):..
수강일자 2022년 7월 27일 수요일 ~ 2022년 7월 29일 금요일 (3일) 수강후기 혼자서 이것저것 뚝딱 만들 때는 상관없는데 확실히 협업할 때 Git 중요성을 절실히 느낀다.예전에 스파르타코딩클럽 Git 강의를 들었을 때는 소스트리 GUI 환경으로 해서 개념만 짚고 넘어갔었다.CLI 환경에서는 사실 push, pull, branch, merge 등만 사용했었다. (맨날 쓰던 것들)이번에 원티드 프리온보딩에 참여하면서 Git flow가 꼬여있을 때 구글링이나 다른 팀원 분 도움으로 긴급처치는 했지만 제대로 된 개념을 익히지 않을 채로 적용하다 보니 따로 공부가 필요했다.그래서 듣게 된 Git 강의였다. 총 강의 시간은 3시간 정도였는데, 정리하고 하다 보니 3일이나 걸렸다.아마 주말에 들었다면 반..
오늘 새벽 2시까지 팀장님과 함께 에러를 수정하며 결국 dj-rest-auth를 알맞게 커스텀하였다. 엄청난 대장정이었다. dj-rest-auth 깃허브에 들어가서 파일 하나씩 다 뜯어보고 하나씩 우리 모델에 맞게 수정해봤다. 결국 로그인 시리얼라이저만 커스텀하고 나머지 기능은 그대로 사용하는 방식으로 간단히 끝낼 수 있었다. 결과물이 탄생한 과정은 아래와 같다. 이전에 우리 팀 유저 모델에서 유저 pk를 id(uuid 형태)로, 유저 아이디를 user_id로 작명했었다. 그런데 dj-rest-auth에서 로그인을 하면 user라는 변수가 정의되는데 여기에서 계속 user_id와 uuid 형태의 id가 서로 데이터 타입이 맞지 않는다며(당연함) 에러가 발생했다. 한참 동안 팀장님과 이것저것 시도해보다가 ..
과제 진행기간 2022년 7월 4일(월) ~ 2022년 7월 8일(금) 과제 요구사항 고객은 이메일, 비밀번호 입력을 통해 회원가입을 할 수 있음 고객은 로그인 이후 가계부 관련 아래의 행동을 할 수 있음. CREATE: 가계부에 오늘 사용한 돈의 금액, 관련 메모를 남길 수 있음 UPDATE: 가계부에서 수정을 원하는 내역은 금액, 메모를 수정할 수 있음 DELETE: 가계부에서 원하는 내역은 삭제할 수 있음 DELETE_FLAG: 삭제한 내역은 언제든지 다시 복구할 수 있음 LIST: 가계부에서 이제까지 기록한 가계부 리스트를 볼 수 있음 DETAIL: 가계부의 상세한 세부 내역을 볼 수 있음 고객은 회원 가입 이후, 로그인, 로그아웃 할 수 있음 로그인하지 않은 고객은 가계부 내역에 대한 접근 제한..
1. 수업소개 생활코딩 / Docker 입문수업 생활코딩 / Opentutorials 운영체제, DB, 웹서버 등을 한 개발자가 다 설치하고 관리하려면 너무 힘들다. 누군가 대신 해줬으면 좋겠다. 각각 알맞은 운영체제 위에 설치된 웹서버 하나, 또 다른 운영체제 위에 설치된 DB 하나를 네트워크로 연결해서 사용하면 총 3개의 서버가 필요하게 됨. 낭비임. 하나의 컴퓨터에 가상으로 컴퓨터를 만들고, 그 위에 운영체제를 설치한 후에 웹서버 설치하면 어떨까? 운영체제 위에 또 운영체제가 나오니까 리소스도 부족하고 속도도 느려짐. 또 다시 새로운 기술 등장. 1대의 컴퓨터 내에서 각각의 앱을 실행함. 이 앱들은 격리된 환경에서 실행됨. 이런 기술을 컨테이너이라고 함. 리눅스 운영체제에는 이미 이 기술이 내장되어..
세션 VS. 토큰! JWT가 뭔가요? 링크: https://www.youtube.com/watch?v=1QiOXWEbqYQ 인증과 인가의 차이점 인증(Authentication): 유저나 디바이스의 신원을 확인하는 것. HTTP 메시지에 누군지 적어서 서버로 요청 보냄. 인가(Authorization): 유저나 디바이스에게 접근 권한을 허가하거나 거부하는 것 세션 & 쿠키 세션: 서버 쪽에 저장하는 정보 쿠키: 클라이언트의 자체적인 임시저장소 로그인이 성공하면 세션 표딱지를 반으로 갈라서 하나는 사용자 브라우저에 세션 ID(쿠키)로 저장하고, 다른 한 쪽은 서버의 자기 책상, 창고 등(DB, 메모리, 하드디스크 등)에 올려놓는다. Stateful: 모든 사용자의 상태를 기억함. 덕분에 기억하는 대상의 상..
과제 진행기간 2022년 6월 28일(화) ~ 2022년 7월 1일(금) 목적 Open API 방식의 공공데이터를 수집, 가공해서 전달하는 REST API와 이를 요청하는 클라이언트 개발 사용하는 데이터 서울시 하수관로 수위 현황 / http://data.seoul.go.kr/dataList/OA-2527/S/1/datasetView.do 서울시 강우량 정보 / http://data.seoul.go.kr/dataList/OA-1168/S/1/datasetView.do 요구사항 72시간 내에 제출 클라이언트, 서버는 원하는 언어, 프레임워크로 개발해도 괜찮음. (우리는 Python, DRF) 결과는 JSON 형식으로 나오도록 함. 소스에 docstring 넣기 공부한 내용 01. 테스트 코드 작성(test..
에러상태 UnicodeEncodeError: 'cp949' codec can't encode character '\u023f' in position 592: illegal multibyte sequence NAM@LAPTOP-KUF2TKCI MINGW64 ~/Desktop/labq (main) $ conda activate labq # >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT
어제 원티드 프리온보딩 백엔드 코스 OT가 끝나고 팀이 구성되었다. 각각 Python, Javascript 를 사용하는 팀끼리 나눠졌다. (나는 Python) 우선 1주차 과제를 받고 팀원들끼리 자기소개를 진행했다. 그리고 오늘부터 요구사항 분석 및 코드 작성이 진행되었다. 가상환경은 아나콘다로 이루어졌는데, 역시 한글로 적힌 내 사용자 이름이 또 다시 문제였다. 팀장님이 주신 링크대로 차근차근 따라가니 고질적인 사용자 이름 문제를 수정할 수 있었다. [Window10] 사용자 이름 변경하는 방법 그런데도 아나콘다를 git bash에서 실행할 때 계속 인코딩 에러가 나타났다. 팀장님이 주신 명령어 덕에 결국 해결은 할 수 있었다. (python manage.py runserver 돌리기 힘들다) anac..
원티드 프리온보딩 원티드에서 진행하는 프리온보딩 백엔드 코스에 지원하게 되었다. 원티드 프리온보딩 백엔드코스 링크 경력없는 신입들에게 기업과 연계한 실무경험을 제공해준다고 한다. 선발과제가 있는데 제출일이 빠를수록 가산점을 준다. 숏에세이 작성 주제) 프리온보딩 코스에는 참가기업에 지원해야 하는 제도가 있습니다. 왜 이런 제도가 있는지, 그리고 지원하고 싶은 참가기업은 어디인지 작성해주세요. 01. 제도 존재 이유 프리온보딩 코스는 경력이 부족한 신입에게 실무를 경험할 수 있는 기회를 제공합니다. 기업과 주니어 인재를 연결하여 기업 실전과제를 밀도있게 훈련하고, 주니어의 취업을 돕습니다. 주니어는 실무과 연관된 실제 기업 채용과제를 통해 자기주도적 문제 해결 역량을 키울 수 있고, 소통과 협업 역량 같은..
5월에 이런 일들이 있었다 수료식을 하기 전에 이전에 같은 팀원이셨던 분이 오셔서 스터디 생각이 있는지 여쭤보셨다. 사실 백엔드 개발자로 취업을 준비하고 있지만 아직 부족한 점이 많기도 했고, 특히 대부분의 Django 채용공고는 Django Rest Framework를 사용하는 곳이 많아서 따로 공부가 필요했다. 그래서 2명 스터디로 생각하고 있다가, 마지막에 2분이 더 합류하셔서 총 4명의 스터디가 되었다. 우선 기본적인 목표는 알고리즘 공부와 토이프로젝트 진행이었다. 평일은 아침 10시에 다같이 게더타운에 모여 알고리즘 스터디를 하고, 프로젝트 회의를 진행했다. 알고리즘은 하루 2문제씩 풀이했고, 점점 시간이 지나면서 높은 난이도의 문제를 풀도록 미리 문제를 정해뒀다. 마침 스파르타코딩클럽에서 제1..