Skip to content

This repo contains resources to answer philosophical questions about "Why it has been done that way?" in Computer science and engineering

Notifications You must be signed in to change notification settings

massoudsalem/cse-philosophy-and-why-questions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

CSE philosophy and why questions

This repo contains resources to answer philosophical questions about "Why it has been done that way?" in Computer science and engineering [The philosophy of science], also the question of "What to do?"

Another why?

As an undergraduate, I was always wondering "why" in computer science. Why are languages designed this way? Why choose this architecture over that? Why does this algorithm work? Unfortunately, most CS degrees lack courses exploring the philosophy behind the field. I discovered those deeper foundations later, fueling a passion to share that knowledge. This repository collects resources illuminating the "why" of software and systems. I hope it fosters new ways of seeing for future engineers."CSE Philosophy and Why Questions" gathers courses, books, papers and talks from experts. It aims to expand horizons on fundamental questions like:Why this approach? What principles drive design choices? How can new perspectives transform old problems?Question assumptions. Envision new possibilities. Find purpose and grow as thinkers, builders and members of this craft.Discover truth. Build meaning. Thrive in purpose.Together, let's spark contemplation and cultivate growth. Deepen discussions shaping technology and its role in the world.Inspire reflection. Find meaning in challenges faced and truths unveiled.Thrive as engineers. See with fresh eyes. Understand anew.


Before going further, if you are Muslim you have to read this first: PDF if you are not Muslim you need to search for scientism and its problems.

Here is a table contains courses and books on the philosophy behind software engineering, programming languages, and computer science in general.


Field Type Title Author Link Description More Details
Philosophy of Computer Science Book The Computer and the Brain John von Neumann PDF A classic work on the relationship between computers and the brain, written by the pioneering mathematician and computer scientist John von Neumann. -
Philosophy of Computer Science Book Philosophy and Theory of Artificial Intelligence 2017 Vincent C. Müller [Springer] (https://link.springer.com/book/10.1007/978-3-319-96448-5) Offers a comprehensive snapshot of AI research, at the interface between cognitive science, ethics and computer science Discusses advances concepts such as super intelligence and extended mind Fosters the exploration of interdisciplinary topics in AI that have been neglected by more specialized conferences. -
Philosophy of Computer Science Book Minds and Computers : An Introduction to the Philosophy of Artificial Intelligence Matt Carter Amazon Minds and Computers" is a book that explores the philosophical issues surrounding Artificial Intelligence (AI) and introduces readers to the interdisciplinary field of Cognitive Science. It provides a foundation for engaging with AI from a philosophically responsible standpoint and includes exercises and a glossary of terms. -
Philosophy of Computer Science Book Philosophy of Artificial Intelligence David Cycleback Bookboon The book discusses fundamental philosophical questions in artificial intelligence, such as creating intelligent machines, ethical concerns, and consciousness. it is a free textbook
Philosophy of Computer Science Book The Society of Mind Marvin Minsky Amazon A groundbreaking book on artificial intelligence and the nature of the mind, written by the influential computer scientist Marvin Minsky. -
Philosophy of Computer Science Book Mind Children: The Future of Robot and Human Intelligence Hans Moravec Amazon A visionary book on the future of artificial intelligence, written by the roboticist and futurist Hans Moravec. -
Philosophy of Computer Science Book The Nature of Computation Cristopher Moore and Stephan Mertens Amazon An accessible introduction to the theory of computation, written by two leading researchers in the field. -
Philosophy of Computer Science Book The Computational Beauty of Nature Gary William Flake Amazon A fascinating exploration of the ways in which computing can help us understand the beauty and complexity of the natural world, written by the computer scientist and entrepreneur Gary William Flake.
Software Engineering Book The Mythical Man-Month Frederick P. Brooks Jr. Amazon Essays on software engineering, exploring the human elements and challenges. Anniversary Edition
Programming Languages Book Concepts, Techniques, and Models of Computer Programming Peter Van Roy and Seif Haridi Amazon A comprehensive exploration of programming paradigms and their philosophical underpinnings. 1st Edition
Computer Science (General) Book Gödel, Escher, Bach: An Eternal Golden Braid Douglas R. Hofstadter Amazon A deep dive into the connections between math, art, and computer science. 20th Anniversary Edition
Software Engineering Book Design Patterns: Elements of Reusable Object-Oriented Software Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides Amazon A classic book on software design patterns and their philosophical roots. 1st Edition
Programming Languages Course Principles of Programming Languages Various Course Website A course on the principles and design of programming languages. MIT OpenCourseWare
Computer Science (General) Book The Art of Computer Programming Donald E. Knuth Amazon A comprehensive series on computer programming and its underlying philosophy. Boxed Set
Software Engineering Book Clean Code: A Handbook of Agile Software Craftsmanship Robert C. Martin Amazon A book on writing clean, maintainable code and the philosophy behind it. 1st Edition
Programming Languages Book Types and Programming Languages Benjamin C. Pierce Amazon A comprehensive introduction to type systems and their role in programming languages. 1st Edition
Computer Science (General) Course Introduction to the Theory of Computation Michael Sipser Course Website A course on the theory of computation, exploring the limits and possibilities of computing. MIT OpenCourseWare
Software Engineering Book Refactoring: Improving the Design of Existing Code Martin Fowler Amazon A book on refactoring code and the philosophy behind improving code quality. 2nd Edition
Programming Languages Course Programming Language Foundations Various Course Website A summer school course on the foundations of programming languagesand their design. University of Oregon
Computer Science (General) Book Computational Complexity: A Modern Approach Sanjeev Arora and Boaz Barak Amazon An introduction to computational complexity theory and its philosophical implications. 1st Edition
Software Engineering Course Software Design and Architecture Various Course Website A Coursera specialization on the principles of software design and architecture. Coursera
Programming Languages Book Programming Language Pragmatics Michael L. Scott Amazon A comprehensive overview of programming language design, implementation, and usage. 4th Edition
Computer Science (General) Course Great Ideas in Theoretical Computer Science Various Course Website A course on important ideas and concepts in theoretical computer science. MIT OpenCourseWare
Software Engineering Book Extreme Programming Explained: Embrace Change Kent Beck Amazon An introduction to the philosophy and practices of Extreme Programming. 2nd Edition
Computer Science (General) Book The Information: A History, A Theory, A Flood James Gleick Amazon An exploration of the history and theory of information, including aspects of computer science. 1st Edition
Programming Languages Book The Art of Computer Programming: Fundamental Algorithms Donald E. Knuth Amazon An in-depth exploration of algorithms and their role in programming languages. 3rd Edition
Software Engineering Book Domain-Driven Design: Tackling Complexity in the Heart of Software Eric Evans Amazon A book on domain-driven design and its philosophical approach to software development. 1st Edition
Programming Languages Course Functional Programming Principles in Scala Martin Odersky Course Website A course on functional programming principles and their application in Scala. Coursera
Computer Science (General) Book The Master Algorithm: How the Quest for the Ultimate Learning Machine Will Remake Our World Pedro Domingos Amazon An exploration of machine learning and its philosophical implications for computer science. 1st Edition
Software Engineering Course Software Processes and Agile Practices Various Course Website A course on software processes and agile practices in software engineering. Coursera
Programming Languages Book Purely Functional Data Structures Chris Okasaki Amazon A book on the design and implementation of functional data structures. 1st Edition
Computer Science (General) Course Algorithms, Part I Robert Sedgewick and Kevin Wayne Course Website A course on the fundamentals of algorithms and their role in computer science. Coursera
Software Engineering Book Working Effectively with Legacy Code Michael Feathers Amazon Book offers practical strategies for cost-effective handling of legacy code problems with guidance on refactoring and writing tests. Examples in Java, C++, and C#. 1st Edition

Todo:: adding podcasts, blogs and sites

About

This repo contains resources to answer philosophical questions about "Why it has been done that way?" in Computer science and engineering

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published