Colloquium Archive

The Case For Infrastructure Maintenance

Jim Horning, Sparta, Sunnyvale

11/13/2008

Civilization and infrastructure are intimately intertwined. Rising civilizations build and benefit from their infrastructures in a “virtuous cycle. As civilizations decline, their infrastructures decay. Dependence on critical infrastructures is increasing worldwide. This is true not only of information systems and network services, but also of energy, water, sanitation, transportation, and others that we rely on for our livelihood and well-being. These critical infrastructures are becoming more interrelated, and more heavily dependent on information technology. People demand ever more and better services, but understand ever less about what it takes to provide those services. Engineers know that physical infrastructures decay without regular maintenance, and prepare for aging (e.g., corrosion and erosion) that requires inspections and repairs. Proper maintenance is generally the cheapest form of insurance against failures. However, it has a definite present cost that must be balanced against the unknown future cost of possible failures. Although computer software does not rust, it is subject to incompatibilities and failures caused by evolving requirements, changing environments, changes in underlying hardware and software, changing user practices, and malicious exploitation of discovered vulnerabilities. Therefore, it requires maintenance. Yet the costs of maintenance are often ignored in the planning, design, construction, and operation of critical systems. Incremental upgrades to software are error-prone. Software engineers receive little training in preparing for software aging, in supporting legacy software, or in knowing when and how to terminate decrepit legacy systems.

Using Python In Embedded Applications

Chris Ramstad, Joe Miguel, Stephen West, Cyanoptic, Petaluma

11/20/2008

Python is a high level dynamic programming language with a large selection of built-in and third party libraries. It has become a mature and well tested language over the last 17 years. Traditionally, Python has not been considered as a primary tool for implementing core functionalities on embedded products. It is often either not considered because it is a 'scripting language' or rejected due to concern about poor performance. However, given the ever growing complexity of software requirements, pressure to shorten time to market, and the continual drop of cost in computing power, leveraging Python makes more sense. Python can now be considered as a viable alternative to C/C++/Java in many high performance embedded applications.

Fall 2008 Short Presentations Of Student Research

STUDENT PRESENTATIONS (Pizza during talks)

12/04/2008

Short presentations of research carried out by Sonoma State Computer Science Students

Awards Presented To Sonoma State Computer Science Majors

END OF SEMESTER CELEBRATION & AWARDS (Pizza during talks)

12/11/2008

Pages