Computer-science: Simplifying Curriculum

Created on 19 Jul 2020  路  10Comments  路  Source: ossu/computer-science

Problem:
The current structure does not organize courses by knowledge area and dimension respecting their scope and hierarchy.

Background:
Simplifying tracks and having all the resources systematically arranged by knowledge areas will have some of the following advantages:

  • Topology. Even though the courses recommended are awesome and high quality, OSSU claims courses are topologically sorted, but its a mess the knowledge areas and dimensions are not clear and the path its hard to understand. I am already half way of the curriculum and I would have appreciated if someone had actually linearly arranged the curriculum like I'm doing in this issue.
  • Overview. The current scope of each bucket/track its so different, for example there is a huge discrepancy in the scope from the bucket for Tools, Security and Systems. So the current overview its not clear, this arrangement will give a better perspective of all the knowledge areas and courses for curriculum and career path understanding. It would not pass years until security courses are added to the curriculum because its easier to spot which knowledge areas are lacking resources.
  • Flexibility. Moving only inside the scope of a knowledge area instead of topics will aid with updates, and a better curriculum continuous improvement practice overall.

    • Tools is currently a bucket, when its just a course that includes maybe a couple of topics of one knowledge area. It should just be a course inside the Applications dimension with the IAS - Information Assurance and Security knowledge area label.

    • Security its simply a complete knowledge area that is treated with the same scope as the Applications dimension. Security should just be a label for courses inside the Applications dimension.

    • Applications its a dimension that includes knowledge areas like IAS - Information Assurance and Security and topics like _Tools and Environments_ (A topic from the knowledge area of SE - Software Engineering).

  • Standards. So the current hierarchy of buckets its a mess. Computing Curricula stablishes that CS should work on 3 of the five computing dimensions (_Software Methods and Technologies_ {Theory}, _Systems Infrastructure_ {Systems} and _Application Technologies_ {Applications}). Then the knowledge areas are specified on the Curriculum Guidelines for Undergraduate Programs in Computer Science. For example the hierarchy goes as follows:

DIMENSION Applications

KNOWLEDGE AREA IAS - Information Assurance and Security

TOPIC Cryptography

  • Accessibility. Arranging by knowledge area will simplify access to _optional support_ resources allowing students an easier comparison and switch between courses to compliment or improve their studies. Like physical libraries in universities do.
  • Scalability. It will make it more manageable to add more variety of courses and resources to each knowledge area. Since the granularity of each knowledge area allows it.
  • Trello. Should go inside Summary instead of at the end, and specific instructions on a separate .MD.
  • Categories. Computing Curricula also establishes the work of computer scientists as falling into three categories not 13 categories that OSSU has right now.

    • Theory: Develop effective ways to solve computing problems.

    • Systems: Devise new ways to use computers

    • Applications: Design and implement software.

Proposal:
Simplifying tracks for the curriculum based on dimension and knowledge area. The structure is better detailed in this draft of comment-660886018

Curriculum

Most helpful comment

Open Source Society University - Computer Science

Curriculum


Intro CS

| Knowledge Area | Course | Hours| Prerequisites |
|---|---|---|---|
| SDF - Software Development Fundamentals|CS50's Understanding Technology | 24 | none

Core CS

Theory

Develop effective ways to solve computing problems.

| SDF - Software Development Fundamentals | Python for Everbody & CS50 | 244 | none
|:--|:--|:--|:--|
| PL - Programming Languages| Programming Languages A-B-C| 66 | SDF
| SP - Social and Professional Practice| Learning How to Learn | 15 | none
| DS - Discrete Structures| 1 Calculus A-B-C, Probab. & CS Math | 420 | high school
| CN - Computational Science | Computer Science | 20 |DS AL
| AL - Algorithms and Complexity | Algorithms | 96 | SDF PL DS

Systems

Devise ways to use computers.

| SF - Systems Fundamentals | Nand to Tetris I & II | 150 | SDF
|:--|:--|:--|:--|
| IM - Information Management | Relational, Modeling & Semistructured| 54 | none
| NC - Networking and Communications | Computer Networking | 64 | SDF DS
| AR - Architecture and Organization| Circuits, Architecture & Organization | 180 | SF
| OS - Operating Systems | Intro to Operating Systems | 66 | AL |
| IS - Intelligent Systems | Artificial Intelligence & Machine Learning | 55 | Linear Algebra

Applications

Design and implement software.

| SE - Software Engineering | Compilers, Debugging & Testing | 135 | SDF PL
|:--|:--|:--|:--|
| IAS - Information Assurance and Security | Secure Coding Practices | 64 | SDF
| HCI - Human-Computer Interaction | Software Architecture & Design | 48 | SDF PL
| PD - Parallel and Distributed Computing | Parallel Programming | 28 | SDF PL DS
| GV - Graphics and Visualization | Computer Graphics | 72 | Linear Algebra
| PBD - Platform-based Development | Introduction to Haskell | 70 | SDF PL

Specializations

PBD - Platform-based Development HCI - Human-Computer Interaction IS - Intelligent Systems IM - Information Management PD - Parallel and Distributed Computing

| KA | Course | Hours | Prerequisites |
|---|---|---|---|
| PBD | Fullstack Open | 72 | programming |
| PBD | Functional Programming in Scala | 29 | programming experience |
| PBD | Game Design and Development | 120 | programming, interactive design |
| HCI | Internet of Things | 90 | strong programming |
| IS | Modern Robotics | 75 | physics, linear algebra, calculus, differential equations|
| IM | Data Mining (Specialization) | 90 | machine learning |
| IM | Big Data (Specialization) | 120 | none |
| IM | Data Science (Specialization) | 120 | none |
| PD | Cloud Computing | 120 | C++ programming |

All 10 comments

The contributing section points to our curricular guidelines. One thing to note is that the CS2013 splits CS courses into 17 knowledge areas! This approach would move us further from that model.

The links to the 4 different schools similarly shows a variety of ways to categorize courses. The proposed system above matches the Princeton approach. This is somewhat similar to Harvard, which has the broad buckets of Basic mathematics, Basic software, Theory, Technical electives. Stanford uses Prereqs, Programming, Core and Electives.
MIT does not use such buckets.

Right now we essentially have the buckets:
programming
math
systems
theory
applications
security
tools

The Extras match this, with the exception of two classes in extras that are called: Online Learning - Great Courses. These are simply not part of the CS curriculum at all and are included because students found them valuable in preparing them for online learning.

I infer 3 goals from your proposal:
The structure of Extras should match the curriculum.
The curriculum should be easy to update.
The sections should be easy to understand.

It's not clear to me how these goals aren't fulfilled by the current sections. Can you discuss a place where you feel they are not?

To be clear, Wikipedia uses 4 buckets:

  • Theoretical computer science
  • Computer systems
  • Computer applications
  • Software engineering

I'm interested to hear your response about goals. Did the 3 goals I listed above accurately summarize your goals?

Note: You point out that math can be inside theory along with algorithms. But in the grouping above discrete structures (which is essentially the union of algorithms and structures and discrete math) is in systems.

I made this v9 draft, you guys might like it or can take something good about it. Its not about changing the curriculum structure, but just adding an organized complete overview with all the courses systematically arranged by knowledge area. Btw, feel free to move, add and remove courses around to organize them better, im not an expert.

Open Source Society University - Computer Science

Curriculum


Intro CS

| Knowledge Area | Course | Hours| Prerequisites |
|---|---|---|---|
| SDF - Software Development Fundamentals|CS50's Understanding Technology | 24 | none

Core CS

Theory

Develop effective ways to solve computing problems.

| SDF - Software Development Fundamentals | Python for Everbody & CS50 | 244 | none
|:--|:--|:--|:--|
| PL - Programming Languages| Programming Languages A-B-C| 66 | SDF
| SP - Social and Professional Practice| Learning How to Learn | 15 | none
| DS - Discrete Structures| 1 Calculus A-B-C, Probab. & CS Math | 420 | high school
| CN - Computational Science | Computer Science | 20 |DS AL
| AL - Algorithms and Complexity | Algorithms | 96 | SDF PL DS

Systems

Devise ways to use computers.

| SF - Systems Fundamentals | Nand to Tetris I & II | 150 | SDF
|:--|:--|:--|:--|
| IM - Information Management | Relational, Modeling & Semistructured| 54 | none
| NC - Networking and Communications | Computer Networking | 64 | SDF DS
| AR - Architecture and Organization| Circuits, Architecture & Organization | 180 | SF
| OS - Operating Systems | Intro to Operating Systems | 66 | AL |
| IS - Intelligent Systems | Artificial Intelligence & Machine Learning | 55 | Linear Algebra

Applications

Design and implement software.

| SE - Software Engineering | Compilers, Debugging & Testing | 135 | SDF PL
|:--|:--|:--|:--|
| IAS - Information Assurance and Security | Secure Coding Practices | 64 | SDF
| HCI - Human-Computer Interaction | Software Architecture & Design | 48 | SDF PL
| PD - Parallel and Distributed Computing | Parallel Programming | 28 | SDF PL DS
| GV - Graphics and Visualization | Computer Graphics | 72 | Linear Algebra
| PBD - Platform-based Development | Introduction to Haskell | 70 | SDF PL

Specializations

PBD - Platform-based Development HCI - Human-Computer Interaction IS - Intelligent Systems IM - Information Management PD - Parallel and Distributed Computing

| KA | Course | Hours | Prerequisites |
|---|---|---|---|
| PBD | Fullstack Open | 72 | programming |
| PBD | Functional Programming in Scala | 29 | programming experience |
| PBD | Game Design and Development | 120 | programming, interactive design |
| HCI | Internet of Things | 90 | strong programming |
| IS | Modern Robotics | 75 | physics, linear algebra, calculus, differential equations|
| IM | Data Mining (Specialization) | 90 | machine learning |
| IM | Big Data (Specialization) | 120 | none |
| IM | Data Science (Specialization) | 120 | none |
| PD | Cloud Computing | 120 | C++ programming |

I agree that your suggestion:
-May make the curriculum easier to understand.
-More flexible and easier to update and adding or removing courses.
-The guideline sections can be nested in it, so we wouldn't move away from the current approach of the guideline as @waciumawanjohi wanted to avoid.
-The last suggestion when you added the extra courses just beneath the main courses will make the courses more visible and accessible, allowing students an easier comparison and switch between courses.

However, I suggest:

  • keeping the intro section as it is, so newcomers have an easier time knowing where to start.
  • your suggestion when you have put the advanced courses in the same table as the core courses better be avoided since it will create a little confusion (students may think that they should advance per table rather than core than advanced).

in my version of the OSSU curriculum, I used the same sectioning used in "teachyourselfcs" because I kind of merged the two of them and probably I will update it to use this one

Resources

This is a list of high-quality resources, they are systematically arranged according to the knowledge areas stablished in the Curriculum Guidelines for Undergraduate Programs in Computer Science with their recommended lecture hours.

| Knowledge Area | 308 Lecture Hours | 100%
|---|---|---|

Theory

|SDF - Software Development Fundamentals | 43 | 13.9%
|:--|:--|:--|
|PL - Programming Languages | 28 | 9.1%
|DS - Discrete Structures | 41 | 13.3%
|SP - Social Issues and Professional Practice | 16 | 5.1%
|CN - Computational Science | 1 | .3%
|AL - Algorithms and Complexity | 28 | 9.1%

Systems

|SF - Systems Fundamentals | 27 | 8.7%
|:--|:--|:--|
|IM - Information Management | 10 | 3.2%
|NC - Networking and Communications | 10 | 3.2%
|AR - Architecture and Organization | 16 | 5.1%
|OS - Operating Systems | 15 | 4.8%
|IS - Intelligent Systems | 10 | 3.2%

Applications

|SE - Software Engineering | 28 | 9.1%
|:--|:--|:--|
|IAS - Information Assurance and Security | 9 | 2.9%
|HCI - Human Computer Interaction | 4 | 1.2%
|PD - Parallel and Distributed Computing | 15 | 4.8%
|GV - Graphics and Visualization | 3 | .9%
|PBD - Platform Based Development | 0 | 0%


SDF - Software Development Fundamentals

Knowledge Units: Algorithms and Design Fundamental Programming concepts Fundamental Data structures Development Methods

| Courses | Readings and Other |
|---|---|
| Python for Everbody | Structure of Programs - Hal Abelson...
| Intro to CS - CS50 | How to Design Programs - Matthias Felleisen...
|Intro to CS and Programming| Think Python 2e - Allen B. Downey
|Fundamentals of Computing| Googles's Foundations of Programming
|How to Code 1 2| 100+ Python Coding Problems
|Computer Fundamentals| Codingame.com
|Computer Programming Khan | Intro to Programming - John V. Guttag
|Java Programming| Concepts of Programming - Peter Van Roy...
|Computing In Python | MDN HTML CSS JavaScript
|Programming Basics | You Don't Know JS 1 2 3
|Computing In Python | Awesome for beginners |
|Programming Basics | Rosalind

PL - Programming Languages

Knowledge Units: Object Oriented programming Functional Programming Event-Driven and Reactive Programming Basic Type Systems Program Representation Language Translation and Execution Syntax Analysis Compiler Semantic Analysis Code Generation Runtime Systems Static Analysis Advanced Programming Constructs Concurrency and Parallelism Type Systems Formal Semantics Language Pragmatics Logic Programming

| Courses | Readings and Other |
|---|---|
| Pogramming Languages A B C | Programming Languages - Shriram Krishnamurthi
| CS50 Web | Programming - Shriram Krishnamurthi...
| Interactive Programming 1 2 | Competitive Programming - Steven Halim...
| Object Oriented Programming with Java | Design Patterns - Erich Gamma...
| Programming with MATLAB | Refactoring - Martin Fowler
| Functional Programming | Clean Code - Robert Martin
| Interpretation of Computer Programs | Code Complete 2e - Steve McConnell
| |The Pragmatic Programmer - Andrew Hunt...
| |JavaScript Allong茅
| |D2 Tips and Tricks
| |Think Java

DS - Discrete Structures

Knowledge Units: Sets, Relations, and Functions Basic Logic Proof Techniques Basics of Counting Graphs and Trees Discrete Probability

| Courses | Readings and Other |
|---|---|
| 1 Calculus A B C | Discrete Mathematics: An Open Introduction - Oscar Levin
Probability | Applied Discrete Structures - Alan Doerr, Ken Levasseur
Math for CS | Grinstead and Snell鈥檚 Probability - Charles M. Grinstead...
Introduction to Logic | Introduction to Linear Algebra - Gilbert Strang
Discrete Mathematics | Calculus Made Easy - Silvanus P. Thompson
Effective Thinking Through Mathematics | Interactive Calculus Textbooks Ximera team
Mathematical Thinking | Ximera
Sets | Probability Brilliant |
Calculus Khan | Calculus Brilliant |
Probability Khan |
Introduction to Probability Science |
Introduction to Mathematical Thinking |
Advanced Precalculus |
Introduction to Probability and Data |
Multivariable Calculus |
High School Math |
Precalculus |
How to learn Math |
Differential Equations |

SP - Social Issues and Professional Practice

Knowledge Units: Social Context Analytical Tools Professional Ethics Intellectual Property Privacy and Civil Liberties Professional Communication Sustainability History Economies of Computing Security Policies, Laws and Computer Crimes

| Courses | Readings and Other |
|---|---|
| Learning How to Learn |
| Mindshift|

CN - Computational Science

Knowledge Units: Introduction to Modeling and Simulation Modeling and Simulation Processing Interactive Visualization Data, Information and knowledge Numerical Analysis

| Courses | Readings and Other |
|---|---|
| Computer Science | Computer Science - Robert Sedgewick and Kevin Wayne
| Theory of Computation | Introduction to the Theory of Computation

AL - Algorithms and Complexity

Knowledge Units: Basic Analysis Algorithmic Strategies Fundamental Data Structures and algorithms Basic Automata, Computability and Complexity Advanced Computational Complexity Advanced Automata Theory and computability Advanced Data Structures, Algorithms and analysis

| Courses | Readings and Other |
|---|---|
| Algorithms | Visual Algo
| Algorithms I II | Algorithms - Robert Sedgewick and Kevin Wayne
| Data Structures and Algorithms | Analysis of Algorithms - Robert Sedgewick and Phillipe Flajolet
| Analysis of Algorithms (Sedgewick) | Introduction to Computing - David Evans
| Algorithms Khan | Introduction to Algorithms - Thomas H. Cormen...
| Intro to Algorithms 1 2 | Algorithms and Data Structures Freecodecamp
| Analysis of Algorithms (Skiena) | Fundamentals of algorithms - Geeksforgeeks
| Algorithmic Thinking 1 2 | The Algorithm Design Manual - Steven Skiena
| Statistical Mechanics: Algorithms and Computations | Category Theory: A Gentle Introduction - Peter Smith
| Approximation Algorithms I II | Category Theory for Programmers - Bartosz Milewski
| Intro to Algorithms | Open Data Structures
| Complexity Algorithms |
| Design and Analysis Algorithms |

SF - Systems Fundamentals

Knowledge Units: Computational Paradigms Cross-Layer Communications State and State Machines Parallelism Evaluation Resource Allocation adn Scheduling Proximity Virtualization adn Isolation Reliability through Redundancy Quantitative Evaluation

| Courses | Readings and Other |
|---|---|
| Nand to Tetris I II | But How Do It Know? - J. Clark Scott |
| Intro to Computer Systems | Computer Systems - Randal E. Bryant... |
| | System Design - Various

IM - Information Management

Knowledge Units: Information Management Concepts Database Systems Data Modeling Indexing Relational Databases Query Languages Transaction Processing Distributed Databases Physical Database Design Data Mining Information Storage And Retrieval MultiMedia Systems

| Courses | Readings and Other |
|---|---|
| Database Systems 1 2 3| Readings in Database Systems - Peter Bailis... |
| Relational Database Systems | Database Management Systems - Raghu Ramakrishnan...
| Database Systems | Transaction Processing: Concepts and Techniques - Jim Gray...
| Using Databases with Python | Data and Reality - William Kent...
| Database Management Essentials | An Introduction to Information Retrieval - Christopher D. Manning
| Processing Big Data with Azure HDInsight | An Introduction to Statistical Learning - Gareth James
| Big Data Science | Architecture of a Database System - Joseph M. Hellerstein...
| Introduction Data Science |
| Database Concepts and Design |
| Relational Databases |

NC - Networking and Communications

Knowledge Units: Introduction Networked Applications Reliable Data Delivery Routing And Forwarding Local Area Networks Resource Allocation Mobility Social Networking

| Courses | Readings and Other |
|---|---|
| Computer Networking | Computer Networks (5th) - Andrew S. Tanenbaum |
| Introduction to Computer Networking | Computer Networking (6th) - James F Kurose
| Bits and Bytes Networking |

AR - Architecture and Organization

Knowledge Units: Digital Logic and Digital Systems Machine Level Representation of Database Assembly Level Machine Organization Memory System Organization and architecture Interfacing and Communication Functional Organization Multiprocessing and Alternative Architectures Performance Enhancements

| Courses | Readings and Other |
|---|---|
| Computation Structures 1 2 3 | Computer Organization and Design - David Patternson...
| Computer Architecture |
| Computer Architecture (Machine Structures) |
| Introductory Electricity and Magnetism |
| Electricity and Magnetism 1 2 |

OS - Operating Systems

Knowledge Units: Overview of Operating Systems Operating System Principles Concurrency Scheduling and Dispatch
Memory Management Security and Protection Virtual Machines Device Management File Systems Real Time and Embedded Systems Fault Tolerance System Performance Evaluation

| Courses | Readings and Other |
|---|---|
| Operating Systems: Three Easy Pieces | Operating Systems (4th) - Andrew S. Tanenbaum... |
| Operating System Engineering |
| Introduction to Operating Systems |
| Advanced Operating Systems |
| Os Power User |
| Computer Hardware and Operating Systems |

IS - Intelligent Systems

Knowledge Units: Fundamental Issues Basic Search Strategies Basic Knowledge Representation and Reasoning Basic Machine Learning Advanced Search Reasoning Under Uncertainty Agents Natural Language Processing Advanced Machine Learning Robotics Perception and Computer Vision

| Courses | Readings and Other |
|---|---|
|Machine Learning |Deep Learning - Ian Goodfellow...
|CS50AI | Machine Learning - David Barber
|Game Theory
|Intro to Artificial Intelligence
|Intro to Machine Learning
|Machine Learning for Data Science and Analytics

SE - Software Engineering

Knowledge Units: Software Processes Software Project Management Tools and Environments Requirements Engineering Software Design Software Construction Software Verification and Validation Software Evolution Software Reliability Formal Methods

| Top Courses | Hours |
|---|---|
| Compilers | How to Use Git and GitHub
| Software Debugging | Kubernetes Certified Application Developer
| Software Testing | The Mythical Man-Month - Fred Brooks, Jr.
| The Missing Semester of CS | Compilers - Alfred V. Aho...
| Software Engineering: Introduction | Compiler Construction - Niklaus Wirth
| Software Development Capstone Project | 97 Things Every Programmer Should Know
| Software Construction | Hacker Earth
| Structure and Interpretation |

IAS - Information Assurance and Security

Knowledge Units: Foundational Concepts in Security Principles of Secure Design Defensive Programming Threats and Attacks Network Security Cryptography Web Security Platform Security Security Policy and Governance Digital Forensics Secure Software Engineering

| Courses | Readings and Other |
|---|---|
| Secure Coding Practices |
| Information Security: Context and Introduction |
| Principles of Secure Coding |
| Identifying Security Vulnerabilities |
| Identifying Security Vulnerabilities in C/C++Programming |
| Exploiting and Securing Vulnerabilities in Java Applications |

HCI - Human-Computer Interaction

Knowledge Units: Foundations Design Interaction Programming Interactive Systems User Centered Design and Testing New Interactive Technologies Collaboration and Communication Statistical Methods for HCI Human Factors and Security Design Oriented HCI Mixed, Augmented and Virtual Reality

| Courses | Readings and Other |
|---|---|
| Software Architecture & Design | |
| Internet of Things|

PD - Parallel and Distributed Computing

Knowledge Units: Parallelism Fundamentals Parallel Decomposition Communication and Coordination Parallel Algorithms, Analysis, and Programming Parallel Architecture Parallel Performance Distributed Systems Cloud Computing Formal Models and Semantics

| Courses | Readings and Other |
|---|---|
| Parallel Programming | Distributed Systems - Andrew Tanenbaum...
| Cloud Computing / Distributed Programming | Distributed Systems Reading Group - Various
| Introduction to Parallel Programming |
| Introduction to Formal Concept Analysis |
| Parallel, Concurrent and Distributed Programming |
| Fundamentals of Parallelism on Intel Architecture |
| Distributed Computing |
| Git for Distributed Development |

GV - Graphics and Visualization

Knowledge Units: Fundamental Concepts Basic Rendering Geometric Modeling Advanced Rendering Computer Animation Visualization

| Courses | Readings and Other |
|---|---|
| Computer Graphics | Physically Based Rendering - Matt Pharr...
| Computational Geometry|

PBD - Platform-based Development

Knowledge Units: Introduction Web Platforms Mobile Platforms Industrial Platforms Game Platforms

| Courses | Readings and Other |
|---|---|
| Introduction to Haskell | Open Source Applications - Michael DiBernardo |
| Functional Programming in Scala | Language Implementation Patterns - Terence Parr
| Game Design and Development | The Google Android Development Guide

It's been over a month since the last comment on this issue.
This issue raises a number of different suggestions:

  • Change how duration/effort are reported. (This actually inspired this RFC: https://github.com/ossu/computer-science/issues/773)
  • Change how we report topics covered, to report the Knowledge Areas from our curricular guidelines. (I support this!)
  • List the Knowledge Area next to each course.
  • Change how math is organized, removing multiple courses.
  • Add How to Learn to the main curriculum.
  • Add the school and platform of a course.
  • Add an entry for "Additional/Optional Support" for courses.
  • Change the grouping of courses

It's been difficult to have discussions about each of these. Both because they are all bundled together and because comments were edited multiple times after contributors had voted or commented on them.

Lots of interesting ideas. By breaking these out into separate proposals contributors will have the opportunity to discuss the merits of each. In particular, any proposal for a substantive change (like adding or removing courses) should go through an RFC.

@waciumawanjohi I wish to understand how a major version bump happens here in OSSU? There have been many PRs to the curriculum over the past few months, but the rev is in v8?

Meanwhile, in the wiki, I see some drafts of V9, and in quite a few issues, I see many many more drafts of V9 and variants. How do we go from version to version? When is V9 scheduled to be released?

From https://github.com/ossu/computer-science/blob/master/CHANGELOG.md

Note: The curriculum is currently undergoing review for v9. This consists largely of checking our recommendations against our curricular guidelines, adding missing topics and cutting redundant or out of scope courses. As Requests for Comment in this effort are completed, changes are made immediately to the curriculum. When the overall review is complete we will notate the version bump to v9.

See also here:
https://github.com/ossu/computer-science/issues/674

As to the wiki, 18 months ago hanjiexi put a variety of ideas on paper about directions OSSU could go. A number of those have become RFCs and have been incorporated in the curriculum. A number will become future RFCs. There is no current plan for a wholesale alteration, but instead for incremental improvements by RFCs. The wiki no longer makes any reference to the term "v9".

As for the title of this issue, the individual who posted the issue used the term v9.

Will all the closed RFCs be pondered over whenever such a major update will happen?

Was this page helpful?
0 / 5 - 0 ratings