Computer Histories is an introductory course on the history of computing that …
Computer Histories is an introductory course on the history of computing that explores the questions 1) What is the history of computing? 2) What is the future of computing? and 3) What lessons can we learn from computing's past that will help guide us in determining computing's future?
Lecture for the course "CS 217 – Probability and Statistics for Computer …
Lecture for the course "CS 217 – Probability and Statistics for Computer Science" delivered at the City College of New York in Spring 2019 by Evan Agovino as part of the Tech-in-Residence Corps program.
Today we’re going to talk about on how we organize the data …
Today we’re going to talk about on how we organize the data we use on our devices. You might remember last episode we walked through some sorting algorithms, but skipped over how the information actually got there in the first place! And it is this ability to store and access information in a structured and meaningful way that is crucial to programming. From strings, pointers, and nodes, to heaps, trees, and stacks get ready for an ARRAY of new terminology and concepts.
We will discuss numerous research problems that are related to the internet. …
We will discuss numerous research problems that are related to the internet. Sample topics include: routing algorithms such as BGP, communication protocols such as TCP, algorithms for intelligently selecting a resource in the face of uncertainty, bandwidth sensing tools, load balancing algorithms, streaming protocols, determining the structure of the internet, cost optimization, DNS-related problems, visualization, and large-scale data processing. The seminar is intended for students who are ready to work on challenging research problems. Each lecture will discuss:
methods used today issues and problems formulation of concrete problems potential new lines of research
A modest amount of background information will be provided so that the importance and context of the problems can be understood. No previous study of the internet is required, but experience with algorithms and/or theoretical computer science at the graduate/research level is needed.
A 24-page booklet that showcases the exciting ways that scientists are using …
A 24-page booklet that showcases the exciting ways that scientists are using the power of computers to expand our knowledge of biology and medicine. (National Institute of General Medical Sciences)
This course emphasizes computability and computational complexity theory. Topics include regular and …
This course emphasizes computability and computational complexity theory. Topics include regular and context-free languages, decidable and undecidable problems, reducibility, recursive function theory, time and space measures on computation, completeness, hierarchy theorems, inherently complex problems, oracles, probabilistic computation, and interactive proof systems.
Algorithms are the sets of steps necessary to complete computation - they …
Algorithms are the sets of steps necessary to complete computation - they are at the heart of what our devices actually do. And this isn’t a new concept. Since the development of math itself algorithms have been needed to help us complete tasks more efficiently, but today we’re going to take a look a couple modern computing problems like sorting and graph search, and show how we’ve made them more efficient so you can more easily find cheap airfare or map directions to Winterfell... or like a restaurant or something.
Lecture for the course "CS 217 – Probability and Statistics for Computer …
Lecture for the course "CS 217 – Probability and Statistics for Computer Science" delivered at the City College of New York in Spring 2019 by Evan Agovino as part of the Tech-in-Residence Corps program.
Today we’re going to build the ticking heart of every computer - …
Today we’re going to build the ticking heart of every computer - the Central Processing Unit or CPU. The CPU’s job is to execute the programs we know and love - you know like GTA V, Slack... and Power Point. To make our CPU we’ll bring in our ALU and RAM we made in the previous two episodes and then with the help of Carrie Anne’s wonderful dictation (slowly) step through some clock cycles. WARNING: this is probably the most complicated episode in this series, we watched this a few times over ourselves, but don't worry at about .03Hz we think you can keep up.
This course provides an integrated introduction to electrical engineering and computer science, …
This course provides an integrated introduction to electrical engineering and computer science, taught using substantial laboratory experiments with mobile robots. Our primary goal is for you to learn to appreciate and use the fundamental design principles of modularity and abstraction in a variety of contexts from electrical engineering and computer science. Our second goal is to show you that making mathematical models of real systems can help in the design and analysis of those systems. Finally, we have the more typical goals of teaching exciting and important basic material from electrical engineering and computer science, including modern software engineering, linear systems analysis, electronic circuits, and decision-making. Course Format This course has been designed for independent study. It includes all of the materials you will need to understand the concepts covered in this subject. The materials in this course include:
Lecture videos from Spring 2011, taught by Prof. Dennis Freeman Recitation videos, developed for OCW Scholar by teaching assistant Kendra Pugh Course notes Software and design labs Homework assignments and additional exercises Nano-quizzes and exams with solutions
Content Development Leslie Kaelbling Jacob White Harold Abelson Dennis Freeman Tomás Lozano-Pérez Isaac Chuang
Today, we’re going to talk about how HUGE programs with millions of …
Today, we’re going to talk about how HUGE programs with millions of lines of code like Microsoft Office are built. Programs like these are way too complicated for a single person, but instead require teams of programmers using the tools and best practices that form the discipline of Software Engineering. We'll talk about how large programs are typically broken up into into function units that are nested into objects known as Object Oriented Programming, as well as how programmers write and debug their code efficiently, document and share their code with others, and also how code repositories are used to allow programmers to make changes while mitigating risk.
We’ve talked a lot about advances in biotech. But none of those …
We’ve talked a lot about advances in biotech. But none of those could have happened without advances in computing. It’s time to get back to data and explore the unlikely birth, strange life, and potential futures of the Internet. In this episode of Crash Course History of Science, Hank sits down to talk about how computers have changed, where they're going, and how the internet fits into all of this.
This resource contains several ready made curricula for lower primary students. The …
This resource contains several ready made curricula for lower primary students. The resources are easy to use and contain all of the information a teacher would need to teach the lessons/units.
Replication is the cornerstone of a cumulative science. However, new tools and …
Replication is the cornerstone of a cumulative science. However, new tools and technologies, massive amounts of data, interdisciplinary approaches, and the complexity of the questions being asked are complicating replication efforts, as are increased pressures on scientists to advance their research. As full replication of studies on independently collected data is often not feasible, there has recently been a call for reproducible research as an attainable minimum standard for assessing the value of scientific claims. This requires that papers in experimental science describe the results and provide a sufficiently clear protocol to allow successful repetition and extension of analyses based on original data. The importance of replication and reproducibility has recently been exemplified through studies showing that scientific papers commonly leave out experimental details essential for reproduction, studies showing difficulties with replicating published experimental results, an increase in retracted papers, and through a high number of failing clinical trials. This has led to discussions on how individual researchers, institutions, funding bodies, and journals can establish routines that increase transparency and reproducibility. In order to foster such aspects, it has been suggested that the scientific community needs to develop a “culture of reproducibility” for computational science, and to require it for published claims. We want to emphasize that reproducibility is not only a moral responsibility with respect to the scientific field, but that a lack of reproducibility can also be a burden for you as an individual researcher. As an example, a good practice of reproducibility is necessary in order to allow previously developed methodology to be effectively applied on new data, or to allow reuse of code and results for new projects. In other words, good habits of reproducibility may actually turn out to be a time-saver in the longer run. We further note that reproducibility is just as much about the habits that ensure reproducible research as the technologies that can make these processes efficient and realistic. Each of the following ten rules captures a specific aspect of reproducibility, and discusses what is needed in terms of information handling and tracking of procedures. If you are taking a bare-bones approach to bioinformatics analysis, i.e., running various custom scripts from the command line, you will probably need to handle each rule explicitly. If you are instead performing your analyses through an integrated framework (such as GenePattern, Galaxy, LONI pipeline, or Taverna), the system may already provide full or partial support for most of the rules. What is needed on your part is then merely the knowledge of how to exploit these existing possibilities.
This course provides a review of linear algebra, including applications to networks, …
This course provides a review of linear algebra, including applications to networks, structures, and estimation, Lagrange multipliers. Also covered are: differential equations of equilibrium; Laplace’s equation and potential flow; boundary-value problems; minimum principles and calculus of variations; Fourier series; discrete Fourier transform; convolution; and applications. Note: This course was previously called “Mathematical Methods for Engineers I.”
OBJECTIVES:To know what is a computerTo be familiar with the history of …
OBJECTIVES:To know what is a computerTo be familiar with the history of computers.To identify the different types of computers.To identify the hardware components of a computer.
Today, we’re going to look at how computers use a stream of …
Today, we’re going to look at how computers use a stream of 1s and 0s to represent all of our data - from our text messages and photos to music and web pages. We’re going to focus on how these binary values are used to represent numbers and letters and discuss how our need to perform operations on more extensive and more complex matters brought us from our 8-bit video games to beautiful Instagram photos, and from unreadable garbled text in our emails to a universal language encoding scheme.
The framework was developed by the Kapor Center to bring a focus …
The framework was developed by the Kapor Center to bring a focus to equity in Computer Science Education, specifically around teacher preparation, professional development, curriculum development, and policy-making.
This course examines computers anthropologically, as artifacts revealing the social orders and …
This course examines computers anthropologically, as artifacts revealing the social orders and cultural practices that create them. Students read classic texts in computer science along with cultural analyses of computing history and contemporary configurations. It explores the history of automata, automation and capitalist manufacturing; cybernetics and WWII operations research; artificial intelligence and gendered subjectivity; robots, cyborgs, and artificial life; creation and commoditization of the personal computer; the growth of the Internet as a military, academic, and commercial project; hackers and gamers; technobodies and virtual sociality. Emphasis is placed on how ideas about gender and other social differences shape labor practices, models of cognition, hacking culture, and social media.
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.