CompSci - gusenov/kb GitHub Wiki
- Информатика-21. Научно-образовательный проект
- ACM Digital Library
- Computer Systems Fundamentals
- Accidentally Turing-Complete
- Gerald Jay Sussman (coauthor of the MIT computer science textbook “Structure and Interpretation of Computer Programs”)
- Computer Science Roadmap: Curriculum for the self taught developer
- freeCodeCamp.org / Teach Yourself Computer Science – Key CS Concepts You Should Know
- Stanford CS Theory
- YouTube
- CS50 Harvard University's introduction to the intellectual enterprises of computer science and the art of programming.
- Фокcфорд.Учебник / Информатика
- ossu/computer-science Path to a free self-taught education in Computer Science!
- WIRED / Everything You See Is a Computational Process, If You Know How to Look
Blogs
- Matt Might / Blog
- Adrian Colyer’s (voted one of the top 100 young innovators in the world in 2004 by MIT Technology Review) morning paper
- Scrap Your Boilerplate with Object Algebras by Adrian Colyer
Float
- Numerical Computation Guide
- In general, with floating point numbers, there is a problem with loss of precision when you do computations involving large numbers added to small numbers; the small numbers tend to get dropped and go toward zero. This is a general thing about computers, not just graphics (it is the price we pay for being able to pretend we can store real numbers in small amounts of memory).
- Let me first explain something about math on a computer. The memory space of a float or double value is limited, so some values cannot be represented. For example, 0.1 cannot be represented binary, and therefore is rounded when stored in a double. This itself is not dramatic, but the consequences are.
- Visualizing floating point precision loss, or "why #gamedev stuff behaves badly far from the origin"
- How to store an arbitrary 22-bit payload into a NaN-value in floats
- An Introduction to Floating-Point Arithmetic by Alan Zucconi
Courses
- Пикабу / Гарвардский курс CS50 на русском. Все серии
- ossu/computer-science Path to a free self-taught education in Computer Science
Wikipedia
- Code: The Hidden Language of Computer Hardware and Software
- List of unsolved problems in computer science
- List of unsolved problems in information theory
- Template:Computer science
- Category:Computer science books
- Category:Models of computation
- Stream processing
- Category:Scheduling (computing)
- Category:Job scheduling
- Batch processing
- Decomposition (computer science) (factoring)
- Category:Decomposition methods
- Model of computation describes how an output of a mathematical function is computed given an input
- Category:Models of computation
- Computational model
- Decision tree model is the model of computation in which an algorithm is considered to be basically a decision tree, i.e., a sequence of queries or tests that are done adaptively, so the outcome of the previous tests can influence the test is performed next.
- Turing completeness
- Category:Computability theory
- Category:Theory of computation
- Halting problem is the problem of determining, from a description of an arbitrary computer program and an input, whether the program will finish running, or continue to run forever.
- Busy beaver game aims at finding a terminating program of a given size that produces the most output possible.
- Computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other.
- λ-calculus is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation that can be used to simulate any Turing machine.
- List of important publications in theoretical computer science
- State (computer science)
- a system is described as stateful if it is designed to remember preceding events or user interactions; the remembered information is called the state of the system.
- Category:Philosophy of computer science
- Template:Informatics
- ACM Computing Classification System is a subject classification system for computing devised by the Association for Computing Machinery (ACM).
- Circuit (computer science) is a model of computation in which input values proceed through a sequence of gates, each of which computes a function.
- Circuits of this kind provide a generalization of Boolean circuits and a mathematical model for digital logic circuits.
Books
- Classic Computer Science Problems in Python by DAVID KOPEC
- Computer Science Illuminated by Nell Dale, PhD; John Lewis, PhD - 745 pages
- Читаем Тьюринга (Чарлз Петцольд)
- The Art of Modelling Computational Systems. A Journey from Logic and Concurrency to Security and Privacy by Mário S. Alvim, Kostas Chatzikokolakis, Carlos Olarte, Frank Valencia (Eds.) - 461 pages
- Concurrency
- Logic and Constraint Programming
- Security and Privacy
- Approximate Model Counting, Sparse XOR Constraints and Minimum Distance
- #SAT (aka model-counting) is the problem of counting the number of satisfying assignments of a given Boolean formula and is a #P-complete problem. Indeed, every NP Turing machine can be encoded as a formula whose satisfying assignments correspond to the accepting paths of the machine.
- Approximate Model Counting, Sparse XOR Constraints and Minimum Distance
- Models and Puzzles
- Code: The Hidden Language of Computer Hardware and Software by Charles Petzold - 480 pages
YouTube
Q&A
- Computer Science Stack Exchange
- Questions
- Theoretical Computer Science Stack Exchange
- Questions
- Computer Science Educators Stack Exchange
Эдсгер Вайб Дейкстра (Edsger Wybe Dijkstra)
- Association for Computing Machinery
- Хабр / Эдсгер Дейкстра: в поисках «кратчайшего пути» к осознанному программированию
- Википедия / Структурное программирование
E.W.Dijkstra Archive
EWD number | Title |
---|---|
EWD447 | On the role of scientific thought |
EWD498 | How do we tell truths that might hurt? |
EWD854, EWD1036 | Dijkstra on analogies and anthropomorphism |
EWD936 | On anthropomorphism in science |
EWD1036 | Почему нужно изгнать антропоморфную метафору из информатики |
Papers
- Papers We Love
- Exact Computation of the Number of Accepting Paths of an NTM (nondeterministic Turing machine) by Subrahmanyam Kalyanasundaram Kenneth W. Regan