User login |
Academic Programs Fall 07Full Time Programs The successful completion of large software systems requires strong technical skills, good design and competent management. Critical problems with software systems remain despite the best efforts of many very smart people over the last 50 years. Software is often late, over-budget, socially irresponsible, unable to perform according to user needs, poorly designed, poorly implemented, difficult to maintain or some combination of these. In addition, many applications require substantial domain knowledge. While some of these problems and goals have technical solutions, the art of using these solutions and putting together a large system requires a variety of skills and experiences. Student Originated Software is intended to help students gain the technical knowledge required to build software in application domains, as well as support students as they develop a substantial project. Domains of past successful projects include: the sciences, music, visual arts, automobile tuning, education, computer security, databases for small business and local and state agencies. The technical topics covered will be selected from: data structures, algorithm analysis, database systems, object oriented design and analysis, verification techniques and applications architectures. The program seminar will address the history and culture of the software industry-writing verifiably correct programs, programming languages, ergonomics and human-machine interaction and the psychology of computer programming-and other topics as relevant. Logical Foundations of Science and Computing This program introduces the logical, historical, and mathematical foundations of problem solving and computing in the sciences. Students in the program will study the evolution of rational thought and mathematical abstraction in the history of science along with the systems of logic and programming that we use today for problem solving in science, mathematics, and computing. Early Greek philosophers dared to assume that humanity could comprehend the true nature of the universe and the material world through rational thought. Using historical readings we will investigate key conceptual developments in the evolution of scientific and mathematical thought from those early intellectual explorations to the twentieth century. At the same time we will learn the powerful formal systems of logic and computing into which those early ideas have evolved today. We will study first order mathematical logic and its relationship to early Greek rational thought, contemporary critical reasoning, and scientific theories. We also will study how logic is used to build modern digital computers and how mathematical abstraction and logic combine in the creative act of constructing computer programs to solve problems. Class activities will include hands-on laboratory work in programming and logic along with lectures, weekly readings, seminar discussions, written essays and weekly homework problems. Careful observation of the physical world reveals an underlying order. The goal of physics is to build models that explain this order. Crucial among such models are those that explain the interactions between objects and the changes in motion those interactions bring about. With the development of new physical models come new mathematical methods needed for describing them. Calculus, for example, is enormously successful as a tool for analyzing simple models of reality. However, for more complex situations, approximate methods are needed. We can simulate these situations on a computer using numerical methods or algorithms in order to understand their behavior. Learning how to do that efficiently will be one of the goals of this program. During fall quarter, we will cover introductory topics in physics, calculus and computer programming in Python through small-group workshops, interactive lectures, hands-on laboratory investigations and computer programming labs. Through our study of physics, we will learn about models of motion and change and the process for constructing them. We will also learn how to use calculus to analyze these models mathematically and computer programming to create efficient simulations of them. In winter and spring quarters, our focus will primarily be on physics and calculus, with the goal of completing a full year of university-level physics and calculus by the end of the year. During spring quarter, students will have the opportunity to design and carry out laboratory or computer investigations of topics in physics that interest them. Evening and Weekend Studies In this course, we will explore the intersections of art, design, and code on the Web while investigating the historical and cultural implications of new media and technology. Our hands-on technical work will include HTML, CSS, Photoshop, Javascript and PHP. We will also explore theories and trends in new media art, digital culture and overall media literacy. This course is offered as a stand alone course or as the first in a comprehensive three-part series on new media.
|