hardtack-dev / computer-science-korean

:mortar_board: Path to a free self-taught education in Computer Science!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Open Source Society University (OSSU)

[한국어] Open Source Society University

Path to a free self-taught education in Computer Science!
번역 By Gunwoo Ha

Awesome Open Source Society University - Computer Science

컨텐츠

요약

OSSU 커리큘럼은 온라인 자료들을 이용한 컴퓨터 과학의 완전한 교육 입니다. 이 자료는 단지 직업 훈련이나 전문 개발을 위함이 아닌, 모든 컴퓨팅 분야와 원리에 대하여 적절하고 좋은 기초 를 원하는 사람들을 위해 만들어졌으며, 또한 규율과 의지 그리고 (가장 중요한 것은!) 배움에 있어 좋은 습관을 가진 사람들의 대부분은 이 교육을 스스로 얻으며 전세계적인 커뮤니티의 동료 학습자로부터 지원을 받습니다.

이 커리큘럼을 따르는 대부분의 사람들은 이미 CS(Computer Scienece)의 영역 밖의 교육을 받았다고 가정하기 때문에, 일반적인 교육(non-CS)요건을 제외한 컴퓨터 과학 전공자들의 학위 요건에 따라 설계되었습니다. 각 코스들은 세계에서 퀄리티가 높은 것 들이며, 주로 하버드, 프린스턴, MIT 등등에서 가져왔지만, 특별히 다음 기준을 충족하는 자료들이 선택되었습니다.

각 코스들이 충족해야 하는 조건:

  • 등록을 위해 개방되어 있어야 합니다.
  • 정기적으로 진행되어야 합니다. (이상적으로는 스스로의 역량에 맞춰 운영할 수 있는 포맷, 혹은 1년에 여러번 진행)
  • 교재 및 교육원칙이 우수해야 합니다.
  • CS 2013의 표준 커리큘럼에 부합해야 합니다: 컴퓨터 과학 학부 과정 지침

만약 위 기준을 충족하는 과정이 없을 경우, 해당 코스는 책으로 보충됩니다. 만약 커리큘럼에는 맞지 않지만 퀄리티가 우수한 과정이나 책이 있을 경우, 나머지/코스 혹은 나머지/읽을거리에 포함됩니다.

구성도. 커리큘럼은 다음과 같이 설계되어 있습니다:

  • Intro CS : CS(컴퓨터 과학)가 스스로에게 맞는지 시도하는 학생들을 위한 수업
  • Core CS : 대략 컴퓨터 과학 커리큘럼의 3년 과정과 일치하며, 모든 전공자들이 들어야 할 수업 -Advanced CS :대락 컴퓨터 과학 커리큘럼 마지막 1년 과정을 다루고 있으며, 학생의 관심사에 따라서 선택 가능한 수업
  • Final Project: 자신들의 지식을 검증 및 통합, 나태내기 원하는 학생들을 위한, 전 세계의 동료들에게 평가 받는 프로젝트

걸리는 시간. 대략 20시간/2주(하루 2.8시간)울 기준으로 2년 안에 완주가 가능합니다. 각각 이 스프레드 를 통해 끝나는 날짜를 추정할 수 있습니다. 해당 코드를 복사 후, Timeline시트에 시작 날짜와 일주일에 투자할 시간을 넣으세요. 실제로 해당 코스를 진행해보고, Curriculum Data 시트에 실제로 걸리시간을 넣으면, 업데이트된 추정시간을 얻을 수 있습니다.

비용. 모든 코스 혹은 거의 모든 코스는 무료로 수강할 수 있게 제공됩니다. 그러나, 몇몇 코스들은 과제/테스트/프로젝트를 진행함에 있어 비용이 부과될 수도 있습니다. 다만 CourseraedX는 경제적인 지원을 제공합니다.

여러분의 지갑사정에 따라서 투자할 비용과 시간을 결정하세요; 다만, 성공을 결제할 수 없다는 것은 꼭 기억하세요!

과정. 학생들은 그룹을 짓거나 혼자서, 차례에 맞게 또는 무작위로 커리큘럼을 따라갈 수 있습니다.

  • Core CS의 모든 과정을 수강하는 것을 추천합니다, 이미 해당 수업/코스를 확실히 배운 경우에만 스킵하세요.
  • 단순함을 위해서, 모든 코스들은 토폴리지적(위상적)으로 정렬되었으므로, 위에서부터 아래 순서대로 수강하는 추천합니다.
  • Advanced CS 과정은 선택사항입니다. 전문가가 되고 싶은 하나의 과목을 선택하고 (e.g. Advanced programming) 그것에 해당하는 모든 코스들을 수강하세요. 당신이 직접 과목을 만들수도 있지만, 당신이 선택한 과목을 커뮤니티로부터 확인/검증 받기를 추천합니다.

컨텐츠 정책. 만약 당신이 공개적으로 자신의 코스를 범용적으로 공개하기를 계획하고 있다면, 허락된 파일들만 공유해야 하는 것을 잊지 마세요. 각 코스 시작부분에서 약속했듯, 행동 강령(Code of conduct) 존중해주세요!

기여하는 방법

도움 받기 (FAQ와 더욱 채팅방에 대한 더 자세한 정보)

커뮤니티

  • 디스코드 서버가 존재합니다! Discord 여기서 다른 OSSU 학생들과 대화를 나눌 수 있습니다. 왜 자신을 소개하지 않는건가요? OSSU 디스코드로 들어가기!
  • 또한 Github Issue를 통하여 상호작용 할 수 있습니다. 만약 코스에 문제가 있거나, 혹은 커리큘럼에 변화가 필요하다면,여기서 대화를 시작할 수 있습니다. 여기서 더 보기.
  • 뉴스레터를 구독하세요.
  • Open Source Society UniversityLinkedin 프로필에 추가하기!
  • 메모: OSSU를 검색할 때, 더 이상 사용되지 않는 Firebase 앱이 발견될 수 있으나. 깔끔하게 무시하셔도 됩니다. FAQ에서 더 읽을 수 있습니다.

커리큘럼

커리큘럼 버전: 8.0.0 (CHANGELOG 보기)


전재조건

Intro CS

Introduction to Programming (프로그래밍에 대한 소개)

만약 한번도 for-loop 혹은 프로그래밍이 무엇인지 모른다면, 여기서 시작하세요. 이 코스는 자신만의 페이스에 맞혀서 진행할 수 있으며, 일주일에 몇 시간을 투자할지 조절할 수 있습니다.

다루는 주제: 프로그램 기초(simple programs)
데이터 구조 기초(simple data structures)

코스 기간 노력도 전재 조건 논의
모두를 위한 파이썬 (Python for everybody) 10 주 10 시간/주당 없음 디스코드

Introduction to Computer Science (컴퓨터 과학에 대한 소개)

이 코스는 여러분을 컴퓨터 과학의 세계로 초대합니다. 이미 프로그래밍을 경험해봤거나, 해당 코스를 이미 다른 곳에서 배운 적이 있다면 이 코스를 통해서 어떤 느낌으로 진행되는지 감을 잡을 수 있을 것 입니다. 만약 당신이 더 많은 것을 배우고 싶다고 느끼는 채로 이 과정을 끝낸다면, 컴퓨터 과학은 여러분에게 맞을겁니다!

다루는 주제: computation(컴퓨테이션)
imperative programming(명령형 프로그래밍)
basic data structures and algorithms(기초 데이터 구조와 알고리즘) 기타...

코스 기간 노력도 전재 조건 논의
컴퓨터 과학에 대한 소개와 파이썬으로 프로그래밍 하기
(Introduction to Computer Science and Programming using Python)
(alt)
9 주 15 시간/주당 고등학교 대수학 디스코드

Core CS

따로 명시되지 않는 한, 해당하는 모든 코스는 필수로 수강해야 합니다.

Core programming (핵심 프로그래밍)

다루는 항목: 함수형 프로그래밍 (functional programming)
테스트를 위한 디자인(design for testing)
프로그램 요구사항(program requirements)
일반적인 디자인 패턴(common design patterns)
유닛 테스팅(unit testing)
객체지향 디자인(object-oriented design)
정적 타이핑(static typing)
동적 타이핑(dynamic typing) 메타 언어 (ML-family languages via Standard ML)
Lisp 가족군 언어 (Lisp-family languages via Racket)
Ruby(루비) 기타...

The How to Code 코스는 How to Design Programs 책에 기반을 두고 있습니다. 초판은 온라인에서 무료로 제공되며 문제 세트(Problem set)와 답지가 들어있습니다. 해당 코스를 수강하는 사람들은 포함된 과제들을 하시기를 권장합니다.

코스 기간 노력도 전재 조건 논의
하우투 코드 - 간단한 데이터
(How to Code - Simple Data)
7 주 8-10 시간/주당 없음 디스코드
하우투 코드 - 복잡한 데이터
(How to Code - Complex Data)
6 주 8-10 시간/주당 How to Code: Simple Data 디스코드
프로그래밍 언어, 파트 A
(Programming Languages, Part A)
5 주 4-8 시간/주당 How to Code (Hear instructor) 디스코드
프로그래밍 언어, 파트B
(Programming Languages, Part B)
3 주 4-8 시간/주당 Programming Languages, Part A 디스코드
프로그래밍 언어, 파트C
(Programming Languages, Part C)
3 주 4-8 시간/주당 Programming Languages, Part B 디스코드
객채지향 디자인
(Object-Oriented Design)
4 주 4 시간/주당 자바(Java) 기초
디자인 패턴
(Design Patterns)
4 주 4 시간/주당 Object-Oriented Design
소프트웨어 아키텍쳐
(Software Architecture)
4 주 2-5 시간/주당 Design Patterns

Core math (핵심 수학)

이산수학(CS를 위한 수학)은 알고리즘과 데이터 구조를 공부하는데 있어, 전재 조건이며 밀접하게 관련되어 있습니다. 미적분(Calculus)은 학생들이 이산 수학을 준비할 수 있도록 도와주고 수학적 성숙도를 높이는데 있어 도움을 줍니다.

다루는 주제: 이산수학(discrete mathematics)
수학적 증명(mathematical proofs)
기초 통계학(basic statistics)
점근/빅오 표기법(O-notation)
이산 확률(discrete probability)
기타...

코스 기간 노력도 메모 전재 조건 논의
대수학 1A: 미분
(Calculus 1A: Differentiation)
(alt)
13 주 6-10 시간/주당 alt 링크는 미분과 아래 두 코스를 다룸. [고등학교 수학](FAQ.md#how-can-i-review-the-math-전재 조건) 디스코드
대수학 1B: 적분
(Calculus 1B: Integration)
13 주 5-10 시간/주당 - Calculus 1A 디스코드
대수학 1C: 좌표계&무한 급수
(Calculus 1C: Coordinate Systems & Infinite Series)
6 주 5-10 시간/주당 - Calculus 1B 디스코드
컴퓨터 과학을 위한 수학
(Mathematics for Computer Science)
(alt)
13 주 5 시간/주당 문제 세트와 솔루션이 담긴 다른 버젼은 여기를 참고. Calculus 1C 디스코드

CS Tools

이론을 이해하는것은 중요하죠, 하지만 여러분은 프로그램도 만들 줄 알아야 합니다. 이 코스는 이러한 과정들을 더욱 쉽게 만들어주는 여러가지 툴(Tool)들이 존재합니다. 지금 바로 학습해서 프로그램을 코딩의 난이도를 낮추세요.

다루는 주제: 터미널과 쉘 스크립팅(terminals and shell scripting)
빔 에디터(vim)
명령 환경(command line environments)
버전 컨트롤(version control)
기타...

코스 기간 노력도 전재 조건 논의
The Missing Semester of Your CS Education 2 주 12 시간/주당 - 디스코드

Core systems (핵심 시스템)

다루는 주제: 구조적 프로그래밍(procedural programming)
수동 메모리 관리(manual memory management)
불 대수(boolean algebra)
논리 회로(gate logic)
메모리(memory)
컴퓨터 아키텍처(computer architecture)
어셈블리(assembly)
머신 언어(machine language)
가상 머신(virtual machines)
고레벨/고급 언어(high-level languages)
컴파일러(compilers)
운영 체제(operating systems)
네트워크 프로토콜(network protocols)
기타...

코스 기간 노력도 추가 텍스트 / 과제 전재 조건 논의
제 1원칙을 바탕으로 현대의 컴퓨터 빌드해보기: Nand부터 테트리스까지
(Build a Modern Computer from First Principles: From Nand to Tetris)
(alt)
6 주 7-13 시간/주당 - C언어 형식의 언어
(C-like programming lanaguage)
디스코드
1원칙을 바탕으로 현대의 컴퓨터 빌드해보기: Nand부터 테트리스까지 2부
(Build a Modern Computer from First Principles: From Nand to Tetris Part II)
6 주 12-18 시간/주당 - 여기에 있는 프로그래밍 언어 중 하나, From Nand to Tetris Part I 디스코드
운영체제: 3개의 조각
(Operating Systems: Three Easy Pieces)
10-12 주 6-10 시간/주당 - 알고리즘,
유용한 자료:familiarity with C
디스코드
컴퓨터 네트워킹: 탑-다운 접근
(Computer Networking: a Top-Down Approach)
8 주 4–12 시간/주당 Wireshark Labs algebra, probability, basic CS 디스코드

Core theory (핵심 이론)

다루는 주제: 분할 정복(divide and conquer)
정렬 및 검색(sorting and searching)
확률적 알고리즘(randomized algorithms)
그래프 탐색(graph search)
최단 경로(shortest paths)
데이터 구조(data structures)
탐욕 알고리즘(greedy algorithms)
최소 비용 걸침 나무(minimum spanning trees)
다이나믹/동적 프로그래밍(dynamic programming)
NP 완전(NP-completeness)
기타...

코스 기간 노력도 전재 조건 논의
분할 정복, 정렬 및 검색, 확률적 알고리즘
(Divide and Conquer, Sorting and Searching, and Randomized Algorithms)
4 주 4-8 시간/주당 아무 프로그래밍 언어, Mathematics for Computer Science 디스코드
그래프 탐색, 최단 경로, 데이터 구조
(Graph Search, Shortest Paths, and Data Structures)
4 주 4-8 시간/주당 Divide and Conquer, Sorting and Searching, and Randomized Algorithms 디스코드
탐욕 알고리즘, 최소비용 걸침 나무, 다이나믹 프로그래밍
(Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming)
4 주 4-8 시간/주당 Graph Search, Shortest Paths, and Data Structures 디스코드
재방문된 최단 경로, NP-완전 문제 및 이에 대한 조치
(Shortest Paths Revisited, NP-Complete Problems and What To Do About Them)
4 주 4-8 시간/주당 Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming 디스코드

Core security (핵심 보안)

다루는 항목 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability)
디자인 보안(Secure Design)
방어적 프로그래밍(Defensive Programming)
위협 및 공격(Threats and Attacks)
네트워크 보안(Network Security)
암호학(Cryptography)
기타...

메모: 이 코스들은 잠정적으로 권장됩니다. 보안 코스(Security course)에 있어 공개 코맨트 요구가 있습니다. 기여자들은 RFC의 다양한 과정을 비교하고 피드백을 제공하는 것이 권장됩니다.

코스 기간 노력도 전재 조건 논의
정보보안: 상황 및 설명
(Information Security: Context and Introduction)
5 주 3 시간/주당 - 디스코드
보안 코딩의 원리
(Principles of Secure Coding)
4 주 4 시간/주당 - 디스코드
보안 취약성 식별
(Identifying Security Vulnerabilities)
4 주 4 시간/주당 - 디스코드

아래 중 하나 를 고르세요:

코스 기간 노력도 전재 조건 논의
C/C++ 프로그래밍에서 보안 취약점 식별하기
(Identifying Security Vulnerabilities in C/C++Programming)
4 주 5 시간/주당 - 디스코드
Java 애플리케이션의 취약성 공격 및 보안
(Exploiting and Securing Vulnerabilities in Java Applications)
4 주 5 시간/주당 - 디스코드

Core applications (애플리케이션 핵심)

다루는 항목: 에자일 방법론(Agile methodology)
REST
소프트웨어 사양(software specifications)
리팩토링(refactoring)
관계형 데이터베이스(relational databases)
트렌젝션/거래 처리(transaction processing)
데이터 모델링(data modeling)
신경 회로망(neural networks)
지도 학습(supervised learning)
자율 학습(unsupervised learning)
OpenGL
레이트레이싱(ray tracing)
기타...

코스 기간 노력도 전재 조건 논의
데이터베이스: 모델링과 이론
(Databases: Modeling and Theory)
2 주 10 시간/주당 core programming 디스코드
데이터베이스: 관계형 데이터베이스와 SQL
(Databases: Relational Databases and SQL)
2 주 10 시간/주당 core programming 디스코드
데이터베이스: 반구조화된 데이터
(Databases: Semistructured Data)
2 주 10 시간/주당 core programming 디스코드
머신 러닝/기계학습
(Machine Learning)
11 주 4-6 시간/주당 linear algebra 디스코드
컴퓨터 그래픽
(Computer Graphics)
6 주 12 시간/주당 C++ 혹은 Java, linear algebra 디스코드
소프트웨어 엔지니어링: 설명
(Software Engineering: Introduction)
6 주 8-10 시간/주당 Core Programming, and a sizable project 디스코드

Core ethics (핵심 윤리학)

다루는 주제: 사회적 맥락(Social Context)
분석 툴(Analytical Tools)
전문적 윤리학(Professional Ethics)
지적 재산(Intellectual Property)
프라이버시와 시민의 자유(Privacy and Civil Liberties)
기타...

코스 기간 노력도 전재 조건 논의
윤리학, 기술과 엔지니어링
(Ethics, Technology and Engineering)
9 주 2 시간/주당 없음 디스코드
디지털 시대의 지적 재산
(Intellectual Property Law in Digital Age)
4 주 2 시간/주당 없음 디스코드
데이터 프라이버시 기초
(Data Privacy Fundamentals)
3 주 3 시간/주당 없음 디스코드

Advanced CS (고급 CS)

Core CS에서 모든 필수 과정을 완료한 후, 학생들은 관심에 따라 Advanced CS의 집합에서 코스를 선택해야 합니다. 하위 카테고리의 모든 과정을 수강할 필요는 없습니다. 그러나 학생들은 자신이 진학하고자 하는 분야와 관련된 모든 과목을 들어야 합니다.

Advanced programming (고급 프로그래밍)

다루는 항목: 디버깅 이론과 연습(debugging theory and practice)
목표 지향 프로그래밍(goal-oriented programming)
병렬 컴퓨팅(parallel computing)
목표지향 분석과 설계(object-oriented analysis and design)
UML
대규모 소프트웨어 아키텍처 및 설계(large-scale software architecture and design)
기타...

코스 기간 노력도 전재 조건
병렬 프로그래밍
(Parallel Programming)
4 주 6-8 시간/주당 Scala programming
컴파일러
(Compilers)
9 주 6-8 시간/주당 none
Haskell에 대한 소개
(Introduction to Haskell)
14 주 - -
지금 Prolog 배우기!
(Learn Prolog Now!)
(alt)*
12 주 - -
소프트웨어 디버깅
(Software Debugging)
8 주 6 시간/주당 Python, object-oriented programming
소프트웨어 테스팅
(Software Testing)
4 주 6 시간/주당 Python, programming experience

(*) Blackburn, Bos, Striegnitz에 의해 집필됨. (소스에서 컴파일 됨, CC license아래 재배포.)

Advanced systems (시스템 고급)

다루는 항목: 디지털 신호(digital signaling)
조합 논리(combinational logic)
CMOS 기술(CMOS technologies)
순차 논리(sequential logic)
유한 상태 기계(finite state machines)
프로세서 명령 집합(processor instruction sets)
캐시(caches)
파이프라이닝(pipelining)
가상화(virtualization)
병렬 처리(parallel processing)
가상 메모리(virtual memory)
동기화 프리미티브(synchronization primitives)
시스템 호출 인터페이스(system call interface)
기타...

코스 기간 노력도 전재 조건
컴퓨테이션 구조1: 디지털 회로
(Computation Structures 1: Digital Circuits)
10 주 6 시간/주당 Nand2Tetris II
컴퓨테이션 구조2: 컴퓨터 구조
(Computation Structures 2: Computer Architecture)
10 주 6 시간/주당 Computation Structures 1
컴퓨테이션 구조 3: 컴퓨터 구성
(Computation Structures 3: Computer Organization)
10 주 6 시간/주당 Computation Structures 2

Advanced theory (고급 이론)

다루는 항목: 형식 언어(formal languages)
튜링 머신(Turing machines)
계산 가능성(computability)
사건 구성 동시성(event-driven concurrency)
오토마타(automata)
분산 공유 메모리(distributed shared memory)
컨센서 알고리즘(consensus algorithms)
상태 기계 복제(state machine replication)
계산 기하학 이론(computational geometry theory)
명제 논리(propositional logic)
관계 논리(relational logic)
허브렌드 논리(Herbrand logic)
게임 트리(game trees)
기타...

코스 기간 노력도 전재 조건
계산 이론 (강의 목록) 8 주 10 시간/주당 이진 수학, 논리, 알고리즘
계산 기하학(Computational Geometry) 16 주 8 시간/주당 알고리즘, C++
Game Theory 8 주 3 시간/주당 수학적 사고, 확률, 미적분학

Advanced math (수학 고급)

코스 기간 노력도 전재 조건 논의
선형 대수학의 본질
(Essence of Linear Algebra)
- - 고등학교 수학 디스코드
선형 대수학
(Linear Algebra)
14 주 12 시간/주당 공통 필수: Essence of Linear Algebra 디스코드
수치해석학개론
(Introduction to Numerical Analysis)
(alt)
7 주 3-4 시간/주당 Mathematics for Computer Science, 선택: Linear Algebra 디스코드
논리 입문
(Introduction to Logic)
10 주 4-8 시간/주당 set theory 디스코드
확률
(Probability)
24 주 12 시간/주당 Differentiation and Integration 디스코드

Final project (최종 프로젝트)

OSSU University는 프로젝트 중심입니다. 각 코스의 과제와 시험은 지식을 사용하여 실제 문제를 해결할 수 있도록 준비하기 위한 것입니다.

Core CS와 Advanced CS의 관련 부분을 모두 마친 후에는 습득한 지식을 활용하여 해결할 수 있는 문제를 생각해야 합니다. 이러한 실제 프로젝트 작업이 이력서에 멋지게 보일 뿐만 아니라, 이 프로젝트는 여러분의 지식을 검증하고 통합할 것입니다. 완전히 새로운 것을 만들 수도 있고, CodeTriageFirst Timers Only등 도움이 필요한 기존 프로젝트를 찾을 수도 있습니다.

프로젝트를 만드는 데 더 많은 지침을 원하는 학생들은 일련의 프로젝트 지향 과정을 사용할 수 있습니다. 다음은 예시 옵션들 입니다(더 많은 옵션을 사용할 수 있으며, 이 시점에서는 흥미롭고 관련성이 있는 시리즈를 식별할 수 있어야 합니다):

코스 기간 노력도 전재 조건
Fullstack Open 12 주 15 시간/주당 programming
Modern Robotics (Specialization) 26 주 2-5 시간/주당 freshman-level physics, linear algebra, calculus, linear ordinary differential equations
Data Mining (Specialization) 30 주 2-5 시간/주당 machine learning
Big Data (Specialization) 30 주 3-5 시간/주당 none
Internet of Things (Specialization) 30 주 1-5 시간/주당 strong programming
Cloud Computing (Specialization) 30 주 2-6 시간/주당 C++ programming
Data Science (Specialization) 43 주 1-6 시간/주당 none
Functional Programming in Scala (Specialization) 29 주 4-5 시간/주당 One year programming experience
Game Design and Development with Unity 2020 (Specialization) 6 주 5 시간/주당 programming, interactive design

Evaluation (평가)

Final project를 완료한 후:

  • 여러분의 프로제그 정보를PROJECTS에 pull request를 통해서 보내세요.

  • OSSU-CS badge를 여러분의 repository README 달아보세요! Open Source Society University - Computer Science

    • 마크다운: [![Open Source Society University - Computer Science](https://img.shields.io/badge/OSSU-computer--science-blue.svg)](https://github.com/ossu/computer-science)
    • HTML: <a href="https://github.com/ossu/computer-science"><img alt="Open Source Society University - Computer Science" src="https://img.shields.io/badge/OSSU-computer--science-blue.svg"></a>
  • community 채널을 이용하여 동료 학생들에게 알리세요.

OSSU 동료로부터 피드백을 요청하세요. 여러분은 전통적인 의미에서 "등급"을 받는 것이 아닙니다. 모든 사람은 성공이라고 생각하는 것에 대해 자신만의 측정 기준을 가지고 있기 때문입니다. 평가의 목적은 당신이 컴퓨터 과학자라는 것을 세상에 알리는 첫 번째 발표로서 행동하는 것입니다. 이로써 긍정적이든 부정적이든 피드백을 듣는 경험을 얻을 수 있죠.

Final project 평가는 두 번째 목적이 있습니다: OSSU의 평가 여부입니다. 커뮤니티와 커리큘럼을 통해, 독립적인 학습자들이 세계적인 수준의 컴퓨터 과학 교육을 받도록 지도하는 임무를 성공적으로 수행하고 있음을 증명하는 것이죠.

Cooperative work (협동 작업)

여러분은 혼자 프로젝트를 만들거나, 다른 학생들과 함께 만들 수 있어요. 우리는 협동해서 작업하는 것을 정말 좋아합니다! 채널 을 통해서 커뮤니케이션 하며 프로젝트를 합치거나 만들어봅시다!

무슨 프로그래밍 언어를 사용해야 하나요?

오 사랑하는 여러분, 여기는 최고의 자유 공간이에요! 여러분 Final project를 위해 아무 언어나 사용해도 돼요.

중요한 것은 핵심 개념을 내부화하고 원하는 도구(프로그래밍 언어)와 함께 사용할 수 있도록 하는 것입니다.

축하합니다

위 커리큘럼에 해당하는 일련의 과정을 모두 마치면, 여러분은 컴퓨터 과학의 학사 학위와 동등한 학력을 이수하게 됩니다. 축하해요!

다음은 뭘까요? 가능성은 무궁무진 하고 중복돼요:

  • 개발자로써 일자리를 찾아보세요!
  • 읽을거리 에서 여러분의 실력과 지식을 더욱 연마할 고전 책을 찾아보세요.
  • 동네 개발자 모임에 참여해보세요 (e.g. meetup.com).
  • 소프트웨어 개발 세계에서 떠오르는 기술에 주목하세요:
    • Elixir를 통해 actor model를 탐험해보세요, 전투 테스트를 거친 Erlang Virtual Machine을 기반으로 웹을 위한 새로운 기능적 프로그래밍 언어 입니다! -Rust를 통해 borrowing and lifetimes를 탐험해보세요 , 가비지 콜렉터 없이 메모리 & 스레드 안전을 달성하고 있는 시스템 언어입니다!
    • Idris를 통해 dependent type systems 를 탐험해보세요, 타입 기반 개발에 대한 전례 없는 지원을 제공하는 하스켈에서 영감을 받은 새로운 언어입니다!

keep learning

행동 강령

OSSU의 행동 강령.

여러분의 진행상태를 관리/보여주는 방법

  1. Trello에서 계정을 만드세요.
  2. 이 보드 를 여러분의 계정에 추가하세요. 복사/추가하는 법은 여기를 참고하세요.

이제 공식 게시판의 복사본을 얻었으니, 공부를 진행하면서 '실행' 또는 '완료' 컬럼에 카드를 옮기기만 하면 됩니다.

또한 라벨을 통해 진행을 보다 효과적으로 제어할 수 있습니다. 각 라벨은 다음을 의미해요:

  • 메인 커리큘럼(Main Curriculum): 해당 라벨이 있는 카드는 커리큘럼에 나열된 과정을 나타냅니다.
  • 기타 자료(Extra Resources): 해당 라벨이 있는 코드는 학생들에 의해 추가된 자료들을 나타냅니다.
  • 진행중(Doing): 해당 라벨이 있는 카드는 현재 학생이 하고 있는 하고 있는 것을 나타냅니다.
  • 완료(Done): 해당 라벨이 있는 카드는 학생이 끝낸 커리큘럼을 나타냅니다. 이러한 카드에는 해당 코스에서 습득한 지식을 바탕으로 구축된 하나 이상의 프로젝트/아티클 링크가 있어야 합니다.
  • Section: 해당 라벨이 있는 카드는 우리의 커리큘럼에 있는 부분을 나타냅니다. 섹션 라벨이 있는 카드는 Done(완료) 열의 구성을 돕기 위한 것일 뿐입니다. 코스 카드 는 해당 섹션 카드 아래에 놓아야 합니다.

이 게시판의 목적은 학생들에게 그들의 진행 상황을 추적할 수 있는 방법을 제공하고, 또한 친구, 가족, 고용주 등을 위한 공개 페이지를 통해 그들의 진행 상황을 보여줄 수 있는 능력을 제공하는 것입니다. 게시판의 상태를 공개 또는 개인 로 변경할 수 있습니다.

한국어 번역 - Gunwoo Ha

About

:mortar_board: Path to a free self-taught education in Computer Science!

License:MIT License