Search Constraints
Number of results to display per page
Results for:
Year
2016
Remove constraint Year: 2016
« Previous |
1 - 10 of 66
|
Next »
Search Results
-
Courseware
This course is an introduction to principles and techniques of visual communication, and provides opportunities for science and engineering majors to acquire practical skills in the visual computer arts, in a studio environment. Students will learn how to create graphics for print and web, animations, and interactive media, and how to use these techniques to effectively communicate scientific and engineering concepts for learning and teaching. This class involves three hands-on creative projects, which will be presented in class.
- Subjects:
- Computing and Visualisation
- Keywords:
- Information visualization
- Resource Type:
- Courseware
-
e-book
Data structures and algorithms are among the most important inventions of the last 50 years, and they are fundamental tools software engineers need to know. But in my opinion, most of the books on these topics are too theoretical, too big, and too bottom-up: Too theoretical: Mathematical analysis of algorithms is based on simplifying assumptions that limit its usefulness in practice. Many presentations of this topic gloss over the simplifications and focus on the math. In this book I present the most practical subset of this material and eliminate the rest. Too big: Most books on these topics are at least 500 pages, and some are more than 1000. By focusing on the topics I think are most useful for software engineers, I kept this book under 250 pages. Too bottom-up: Many data structures books focus on how data structures work (the implementations), with less about how to use them (the interfaces). In this book, I go “top down”, starting with the interfaces. Readers learn to use the structures in the Java Collections Framework before getting into the details of how they work. Finally, many present this material out of context and without motivation: it’s just one damn data structure after another! I try to alleviate the boredom by organizing the topics around an application—web search—that uses data structures extensively, and is an interesting and important topic in its own right. This application also motivates some topics that are not usually covered in an introductory data structures class, including persistent data structures, with Redis, and streaming algorithms. This book also presents basic aspects of software engineering practice, including version control and unit testing. Each chapter ends with an exercise that allows readers to apply what they have learned. Each exercise includes automated tests that check the solution. And for most exercises, I present my solution at the beginning of the next chapter. This book is intended for college students in computer science and related fields, as well as professional software engineers, people training in software engineering, and people preparing for technical interviews. I assume that the reader knows Java at an intermediate level, but I explain some Java features along the way, and provide pointers to supplementary material. People who have read Think Java or Head First Java are prepared for this book.
- Subjects:
- Computing
- Keywords:
- Java (Computer program language) Data structures (Computer science) Textbooks
- Resource Type:
- e-book
-
Courseware
Computability Theory deals with one of the most fundamental questions in computer science: What is computing and what are the limits of what a computer can compute? Or, formulated differently: “What kind of problems can be algorithmically solved?” During the course this question will be studied. Firstly, the notion of algorithm or computing will be made precise by using the mathematical model of a Turing machine. Secondly, it will be shown that basic issues in computer science, like “Given a program P does it halt for any input x?” or “Given two program P and Q, are they equivalent?” cannot be solved by any Turing machine. This shows that there exist problems that are impossible to solve with a computer, the so-called “undecidable problems”. The book is in English, the recorded lectures and slides however, are in Dutch
- Subjects:
- Computing
- Keywords:
- Machine theory Computational complexity Computable functions
- Resource Type:
- Courseware
-
Video
Nearly every other year the transistors that power silicon computer chip shrink in size by half and double in performance, enabling our devices to become more mobile and accessible. But what happens when these components can't get any smaller? George Tulevski researches the unseen and untapped world of nanomaterials. His current work: developing chemical processes to compel billions of carbon nanotubes to assemble themselves into the patterns needed to build circuits, much the same way natural organisms build intricate, diverse and elegant structures. Could they hold the secret to the next generation of computing?
- Subjects:
- Nanotechnology and Electric and information Engineering
- Keywords:
- Nanoelectromechanical systems Nanotechnology
- Resource Type:
- Video
-
e-book
The Little Book of Semaphores is a free (in both senses of the word) textbook that introduces the principles of synchronization for concurrent programming. In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good understanding of the material or the ability to solve similar problems. The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions. After each problem, the book offers a hint before showing a solution, giving students a better chance of discovering solutions on their own. The book covers the classical problems, including "Readers-writers," "Producer-consumer", and "Dining Philosophers." In addition, it collects a number of not-so-classical problems, some written by the author and some by other teachers and textbook writers. Readers are invited to create and submit new problems.
- Subjects:
- Computing
- Keywords:
- Computer programming Operating systems (Computers) Textbooks
- Resource Type:
- e-book
-
Courseware
This version of the subject Technology Dynamics and Transition Management was tought in co-operation with the Harbin Institute of Technology in China. At the heart of this module lies a model of technology development from a social perspective, which will be applied to water problems in present-day China.
- Subjects:
- Technology
- Keywords:
- Water resources development China Indonesia -- Java Technological innovations Technology -- Social aspects
- Resource Type:
- Courseware
-
Courseware
Companies and governments have to decide upon technological strategies, i.e. which products are to be developed and which processes and infrastructures are required for the future. Several tools to consider technological strategies are dealt with in this course.
- Subjects:
- Technology
- Keywords:
- Sustainable development Technological forecasting Technological innovations -- Forecasting Technological innovations -- Management
- Resource Type:
- Courseware
-
Courseware
The purpose of this course is to learn how to specify the behavior of embedded systems and to experience the design of a provably correct system. In this course you will learn how to formally specify requirements and to prove (or disprove) them on the behaviour. With a practical assignment you will experience how to apply the techniques in practice.
- Subjects:
- Computing
- Keywords:
- Embedded computer systems
- Resource Type:
- Courseware
-
Courseware
This course covers important concepts and techniques in designing and operating safety-critical systems. Topics include the nature of risk, formal accident and human error models, causes of accidents, fundamental concepts of system safety engineering, system and software hazard analysis, designing for safety, fault tolerance, safety issues in the design of human-machine interaction, verification of safety, creating a safety culture, and management of safety-critical projects. Includes a class project involving the high-level system design and analysis of a safety-critical system.
- Keywords:
- System safety Industrial safety
- Resource Type:
- Courseware
-
Courseware
Exploration of space is never out of the news for long and the desire to construct lower-cost, reliable and more capable spacecraft has never been greater. At TU Delft years of technology development and research experience in space engineering allow us to offer this course, which examines spacecraft technologies for satellites and launch vehicles. This course provides: - knowledge of the technical principles of rockets and satellite bus subsystems; - the ability to select state-of-the-art, available components; - analysis of the physical and technical limitations of subsystem components; - identification of the key performance parameters of different spacecraft subsystems; - comparison of the values obtained by ideal theory and real-life ones; - opportunity to make preliminary designs for a spacecraft based on its key requirements. Other spacecraft types, such as interplanetary rovers, are not covered in this course. Spacecraft instrumentation and other payloads are also not covered.
- Subjects:
- Aeronautical and Aviation Engineering
- Keywords:
- Space vehicles
- Resource Type:
- Courseware