/K_Coders_HKU

Primary LanguageJupyter Notebook

스터디 진행 및 깃허브 사용법 [2022]

0. Overview

[NOTIFICATIONS]

추후에 노트북 및 문제 업데이트 되면 깃헙, 슬랙에 모두 공지 드리겠습니다.
자신의 디렉토리를 만들어서 트래킹하고 싶다면 팀별 폴더 하위에 자신의 이름으로 된 폴더를 만드셔도 됩니다 ex) TeamB/Inbum.
저희 스터디는 공유 정신을 지향합니다.
커리큘럼 종료일 기준 문제를 가장 많이 푼 분께는 제 사비 20을 드립니다.


스터디에 참여해주신 여러분 모두 환영합니다. 해당 글을 꼭 읽어보시길 바랍니다. 명확하지 못한 부분이나 질문 사항은 개인적으로 연락 부탁드리겠습니다. (카톡: inbomc79)


[Study Objective] 💰

스터디가 서로에게 동기부여가 되고 꾸준히 배움을 이어나가기 위했으면 합니다. 목표한 바를 이루기를 바라겠습니다 :)


[Schedule and Duties] 🗓

  • 스터디는 1월 셋째 주 (17일) 부터 시작할 예정입니다. 커리큘럼은 4월 마지막째 주(29일)까지입니다.

  • 온라인 및 오프라인 리뷰 세션은 수요에 따라 결정하거나 Voluntary로 진행하겠습니다. 혹은 특정 토픽에 대한 세션을 유동적으로 스케줄한 뒤 진행하는 방안도 고려중입니다.

  • 첫 인트로 세션은 두 팀 동시에 온라인으로 진행할 예정이며, 추후에 시간은 공지드리겠습니다.

  • (1일 1커밋!) 매일 토픽에 해당하는 문제를 몇 개 뽑아 슬랙에 올릴 예정입니다. 그 중 최소 한 개를 선택해 문제를 푼 뒤 파일을 깃허브 main branch에 있는 해당 폴더에 커밋해주시면 됩니다. 한 주간 최소 다섯 문제는 풀어주셔야 합니다. (하지만 많이 풀수록 좋습니다 ㅎㅎ)

  • 코드 정리: 코드 리뷰는 자신이 한 주간 푼 문제들을 Jupyter notebook 혹은 Python file 에 작성 및 정리하고 깃허브에 공유합니다.

  • 로깅: logging 폴더에 있는 자신의 log.md에 자신이 푼 문제들을 기록합니다. 이는 자신의 status를 트래킹 할 수 있는 좋은 습관이 될 것 입니다. 자세한 사항은 밑의 Using this repo 섹션을 참고해주세요.


[Communication] 🙋🏻‍♂️

소통 채널은 우선 슬랙만 이용할 예정입니다. 스터디 관련 공지, 자료, QnA 및 기타사항 등등 여러 채널을 개설해서 모든 소통이 이루어지게끔 할 예정이며, 추후에 필요시 카카오톡 오픈채팅등 활용 방안을 고려하도록 하겠습니다.

Slack: https://join.slack.com/t/codingteststudygroup/shared_invite/zt-10y0iddb9-3WEMePQdXhadStZeglBObA


[Language] 💻

설문 결과에 따라 주 언어는 Python으로 진행할 예정입니다. 로컬에서 작업하기 싫다면 구글 코랩(google colab)을 사용하여도 무방합니다. 이 경우는 별도의 Python 설치가 필요없습니다. 만약 로컬에서도 작업하길 원하시면 (Team B는 권장), 각자 개인 컴퓨터에 Python 3.8.x 버전을 설치해 주시고, 코드 편집 프로그램은 스스로에게 편한 프로그램을 추천하나, 개인적으로는 VSCode 설치를 권장드립니다. 스터디의 언어는 Python으로 진행하지만, 팀 혹은 개인의 요구에 따라 C/C++, Java, SQL 등 다양한 언어를 공부하고 싶다면 가능합니다.


[Team] 👨🏻‍💻

Team A
Team A는 Python을 활용해 개발보다는 분석 및 업무 자동화에 목적에 초점을 맞춘 팀입니다. 하지만 Resume에 파이썬을 적고 실무에 적용하기 위해서는 일정 수준의 데이터 구조와 알고리즘 지식이 필요합니다. 데이터 분석 라이브러리들과 함께 필수 알고리즘 및 데이터구조를 공부합니다. Team A는 HackerRank와 백준 단계별 문제 그리고 다양한 외부 자료들을 활용해서 공부를 진행합니다.

Members: 권상윤, 이현재, 김기원, 한태규, 임소희, 최다연

Team B
Team B는 대기업 (국내외 무관) 코딩 테스트, live coding, take home assignment 등 개발 혹은 분석관련 직군에서의 취준을 위한 알고리즘과 데이터 구조 그리고 OOP 등을 학습하는데 초점을 맞춘 팀입니다. Team A와 비교했을때, 추후에 심화 알고리즘 및 데이터구조를 학습할 예정입니다. 또한, 개인의 도메인 (ex. Front/Back-end, Data, ML/AI, Cloud) 을 학습하길 희망하고, 다른 비슷한 도메인을 준비하는 팀원이 있을 경우 별도로 진행 역시 가능합니다. Team B는 LeetCode와 백준 유형별 문제 그리고 다양한 외부 자료들을 활용해서 공부를 진행합니다.

Members: 이동언, 정인범, 박준성, 박연, 최정안, 최성빈


[Scope & Curriculum] 🔭

본 스터디의 main scope는 데이터구조와 알고리즘이지만, 앞선 섹션에서 설명했듯이 파이썬을 활용한 스킬셋도 병행하고자 합니다. 부가적으로 배우고 싶은게 있으시다면 언제든지 제게 연락해서 알려주시면 제가 도움을 드리도록 하겠습니다. 개인의 학습속도, 일정, 목표들이 다양하기 때문에 커리큘럼을 빠르게 진행하지 않을 예정이지만, 개인의 상황에 맞추어 추가적인 학습을 하시기 바랍니다. 배우는 토픽 및 내용에 대해서는 팀별 폴더 --> solution 폴더 --> 하위 디렉토리를 참고하시면 됩니다.

Week 1 Intro 세션은 제가 진행하고, 세션이 끝나고 팀원들은 Week 2 커리큘럼부터 공부하시면 될 것 같습니다. 커리큘럼은 유동적으로 결정해서 팀별 폴더안의 Agenda.md에 꾸준히 업데이트 하도록 하겠습니다 :)


[Extra Info]

  • 아직 파이썬 사용에 익숙치 않으신 분들은 유튜브에 파이썬 검색하면 기본 강의들이 많으니 보고 오시길 바랍니다.

[Links]

유용한 링크들입니다:
HackerRank: https://practice.geeksforgeeks.org/topic-tags/?ref=shm
LeetCode: https://leetcode.com/problemset/all/
GFG: https://practice.geeksforgeeks.org/topic-tags/?ref=shm
BaekJoon: https://www.acmicpc.net/
Coding Test Bible: http://englishonlineclub.com/pdf/Cracking%20the%20Coding%20Interview%20-%20189%20Progr[…]0Solutions%20(6th%20Edition)%20[EnglishOnlineClub.com].pdf


1. Using this repo

Reference 폴더

  • Materials 폴더: 각종 토픽에 관련한 자료들을 업로드 해놨습니다.
  • Code_Review_Example.ipynb: 매 주 업로드 해야하는 코드 정리 파일의 양식입니다.
  • problems.py: 터미널 커맨드에 p 인자와 함께 파일을 실행하면 문제에 관한 정보를 출력합니다. 예시: python3 problems.py p
  • solution_example.py: 문제에 대한 솔루션 파일 제출 양식 및 안내입니다.
  • 추후에 새로운 파일 및 폴더가 추가되면 이곳에도 설명 첨부하겠습니다.

각 팀 별 폴더

  • Logging: 각자 로깅 파일 (.md) 에 자신이 푼 문제들을 기록하는 폴더입니다.
  • Problems: 매주 문제들을 제가 업로드하는 파일입니다.
  • Solutions: 팀원들이 문제에 카테고리에 맞는 폴더에 솔루션을 업로드하는 폴더입니다. (문제코드_이름.py 형태로 저장)
  • Weekly_Code_Review: 팀원들이 매주 코드정리를 업로드하는 폴더입니다. (예: W3_홍길동.ipynb 형태로 저장)
  • Weekly_Notebook: 매주 커리큘럼에 해당하는 내용을 제가 최대한 정리해서 월 혹은 화요일에 업데이트 합니다.
  • 추후에 새로운 파일 및 폴더가 추가되면 이곳에도 설명 첨부하겠습니다.

질문은 언제든지 환영입니다.

check 용 라인