bluuebunny/crossref_metadata_2025 huggingface dataset:
Perioperative use of recombinant activated factor VII in a Jehovah’s Witness patient undergoing sigmoid colectomy
Authors: HOLLAND DAVID E. , ROBINSON STEPHEN
Published: July 2006

We report the successful use of recombinant activated factor VII (rFVIIa) in a 48‐year‐old male Jehovah’s Witness with rectal bleeding and perioperative hemorrhage associated with sigmoid colectomy. The patient experienced no further blood loss following the administration of rFVIIa, and no adverse events were observed. Our findings suggest that rFVIIa may represent a new therapeutic opportunity for the management of hemorrhage in patients who do not consent to blood transfusions, and that the use of the agent in this patient population is worthy of further investigation.
Acute normovolemic hemodilution in orthopedic surgery
Authors: MONK TERRI G.
Published: July 2006

Acute normovolemic hemodilution (ANH) is an autologous blood collection technique that involves the removal of whole blood from a patient on the day of surgery shortly before an anticipated significant surgical blood loss. ANH is one of the least expensive blood‐conservation practices because it is a ‘point‐of‐care’ strategy that is performed in the operating room at the time of surgery. As ANH and preoperative autologous donation (PAD) have equivalent efficacy but ANH is much less expensive than PAD, ANH is the logical choice for the procurement of autologous blood.
Is there a role for perioperative intravenous iron therapy in orthopedic and trauma surgery? Clinical experience in major lower limb surgery
Authors: MUÑOZ MANUEL , GARCÍA‐ERCE JOSÉ ANTONIO , CUENCA JORGE , IZUEL MÓNICA , MARTÍNEZ ANGEL A. , SOLANO VÍCTOR M.
Published: July 2006

Perioperative anemia is a common condition among orthopedic and trauma surgery patients. Preoperative anemia is most frequently caused by iron deficiency or chronic inflammatory disease and is one of the major predictive factors for perioperative blood transfusion. In addition to preoperative anemia, perioperative blood loss is a major cause of postoperative anemia although blunted erythropoiesis attributable to inflammation‐induced inhibition of erythropoietin (EPO) action and decreased iron availability may also play a role. We assessed the safety and effectiveness of perioperative intravenous iron administration, with or without EPO, to stimulate erythropoiesis in patients undergoing trauma (hip fracture) or elective orthopedic surgery (knee and hip replacement). Overall, no side effects were observed. The treatment resulted in lower transfusion requirements, decreased postoperative infection and mortality rates, and shorter length of hospital stay. If confirmed by large randomized clinical trials, these findings will provide a rationale to treat orthopedic and trauma patients with intravenous iron, alone or in combination with EPO, in order to attain higher postoperative hemoglobin concentrations, reduce postoperative complications and shorten hospital stay while limiting exposure to allogeneic blood.
Experimental estimation of the luminosity of the Sun
Authors: Gil Salvador , Mayochi Mariano , Pellizza Leonardo J.
Published: July 2006

We determine the solar constant experimentally using two independent techniques that allow us to study the dependence of the solar irradiation on the zenith angle and the characteristics of the light extinction in the atmosphere. Our result for the solar luminosity agrees within 7% of the accepted value. This value can be used to estimate the luminosity or power radiated by the Sun. The experiment is inexpensive and conceptually easy to perform and understand.
Encounter of an asteroid with a planet
Authors: Van Allen James A.
Published: July 2006

This paper describes the trajectory of an asteroid (or a comet or spacecraft) as it approaches a planet of much greater mass. The solution of this two-body problem is an instructive first approximation to more refined treatments that include the gravitational forces of the Sun and of planets other than the target planet. Detailed properties of encounter trajectories are derived. As an illustration, it is shown that the collision cross section of the planet is greater by a factor F=1+(vescape∕v0)2 compared to its cross section in the absence of gravitational forces, where vescape is the minimal escape speed from the surface of the planet and v0 is the approach speed of the asteroid at an effectively infinite distance. Sample values of F are given for Earth, Mars, Jupiter, and Saturn.
Atmospheric laser radar as an undergraduate educational experience
Authors: West Leanne L. , Gimmestad G. G. , Roberts D. W. , Stewart J. M. , Wood J. W. , Bowling A. L.
Published: July 2006

The Georgia Tech Research Institute has teamed with a local undergraduate women’s institution, Agnes Scott College, to develop an eye safe atmospheric laser radar (lidar) system as a research experience for undergraduates. The students constructed the lidar under the supervision of Georgia Tech researchers after attending lectures and doing laboratory work on the technologies required to design and build the system. The course succeeded in making lidar technology accessible and appropriate for undergraduates and as a model for other schools. The associated research projects include studies of the planetary boundary layer, tropospheric aerosols and clouds, and the stratospheric aerosol layer.
AHARONOV–BOHM EFFECT WITH SPIN-POLARIZED ELECTRONS
Authors: KHALILOV V. R.
Published: July 2006

The scattering of spin-polarized electrons in an Aharonov–Bohm vector potential is considered. The scattering cross-sections for spin-unpolarized and spin-polarized electron beams differ. It is shown that a bound electron state may occur if the interaction of electron spin with magnetic field having the form of two-dimensional delta function is included. The occurrence of bound state can modify the scattering states but the total cross-section does not change.
EXACT-PROPAGATOR INSTANTANEOUS BETHE–SALPETER EQUATION FOR QUARK–ANTIQUARK BOUND STATES
Authors: LI ZHI-FENG , LUCHA WOLFGANG , SCHÖBERL FRANZ F.
Published: July 2006

Recently an instantaneous approximation to the Bethe–Salpeter formalism for the analysis of bound states in quantum field theory has been proposed which retains, in contrast to the Salpeter equation, as far as possible the exact propagators of the bound-state constituents, extracted nonperturbatively from Dyson–Schwinger equations or lattice gauge theory. The implications of this improvement for the solutions of this bound-state equation, i.e. the spectrum of the mass eigenvalues of its bound states and the corresponding wave functions, when considering the quark propagators arising in quantum chromodynamics are explored.
NEUTRINO MASSES AND TeV SCALE RESONANT LEPTOGENESIS FROM SUPERSYMMETRY BREAKING
Authors: WEST STEPHEN M.
Published: July 2006

We review a class of supersymmetric models in which the light neutrino masses result from higher-dimensional supersymmetry-breaking terms in the MSSM super- and Kähler-potentials. The mechanism used in these models is closely related to the Giudice–Masiero mechanism for the MSSM μ parameter and leads to TeV-scale right-handed neutrino and sneutrino states. In these models, the dominant contribution to the light neutrino (Majorana) mass matrix is a one-loop term with a sub-dominant tree-level "seesaw" contribution.

It is also shown that it is possible to construct a natural model of TeV-scale leptogenesis via the resonant behavior of the one-loop self-energy contribution to the right-handed neutrino (Ni) decay. This model addresses the primary problems of previous phenomenological studies of low-energy leptogenesis: a rational for TeV-scale right-handed neutrinos with small Yukawa couplings; the origin of the tiny, but non-zero mass splitting required between at least two Ni masses; and the necessary non-trivial breaking of flavor symmetries in the right-handed neutrino sector.
GALOIS-STABILITY FOR TAME ABSTRACT ELEMENTARY CLASSES
Authors: GROSSBERG RAMI , VANDIEREN MONICA
Published: July 2006

We introduce tame abstract elementary classes as a generalization of all cases of abstract elementary classes that are known to permit development of stability-like theory. In this paper, we explore stability results in this new context. We assume that [Formula: see text] is a tame abstract elementary class satisfying the amalgamation property with no maximal model. The main results include:.

Theorem 0.1. Suppose that [Formula: see text] is not only tame, but [Formula: see text]-tame. If [Formula: see text] and [Formula: see text] is Galois stable in μ, then [Formula: see text], where [Formula: see text] is a relative of κ(T) from first order logic.

[Formula: see text] is the Hanf number of the class [Formula: see text]. It is known that [Formula: see text].

The theorem generalizes a result from [17]. It is used to prove both the existence of Morley sequences for non-splitting (improving [22, Claim 4.15] and a result from [7]) and the following initial step towards a stability spectrum theorem for tame classes:.

Theorem 0.2. If [Formula: see text] is Galois-stable in some [Formula: see text], then [Formula: see text] is stable in every κ with κμ=κ. For example, under GCH we have that [Formula: see text] Galois-stable in μ implies that [Formula: see text] is Galois-stable in μ+n for all n < ω.
A study of the Linux kernel evolution
Authors: Koren Oded
Published: July 2006

The open source concept is a phenomenon of the past two decades in the computer development world. One of the most important characteristics of this concept is the Linux operating system that was started in the early 90's by Linus Torvalds. The complexity of the code creates a challenging environment requiring highly skilled volunteers.This case study is part of a larger PhD research which deals with the evolution of the open source movement and Linux operating system, that claims to track and examine the kernel source code evolution over more than a decade by reviewing 534 different Linux kernel versions in various parameters such as the growth of source code lines, number of participants, size of the kernel etc. and analyzing the progress of the findings along the time axis. A major part of this research is a study of the Kernel code evolution beginning with the first stable version Furthermore, this study compares the stable kernel versions (140) and the unstable kernel or development versions (394). This reveals an interesting preference to the unstable kernel versions in variety of growth data, such as average additional source code lines, kernel size etc.
System software for high end computing
Authors: Bridges Patrick G. , MacCabe Arthur B. , Krieger Orran
Published: July 2006

The challenges to the HEC system software community fundamentally originate from the need to efficiently exploit massive parallelism. This parallelism comes at either at the fine granularity through multiple cores or hardware accellerators, or at the large granularity, where systems have been built with 10,000 nodes connected over a high performance network. Such parallelism exposes new hardware abstractions that the OS needs to virtualize, introduces new reliability and management problems, new power management and file system issues, and generally requires more extensive software layers to protect programmers and system administrators from having to deal with the complexity of massive parallelism. While the HEC community clearly deals with extreme performance issues, many of the same trends are hitting the broader market. For example, all processor vendors are moving towards multiple cores, special purpose accelerators are becomming increasingly commoditized, and massive scale out systems are being used today by companies like Google.
P.R.O.S.E.
Authors: Van Hensbergen Eric
Published: July 2006

This document re-evaluates the software stack in the light of para-virtualization technology and hypervisor support within next generation processors and operating systems. We describe an infrastructure enabling the use of logical partitions (LPARs) for the execution of stand-alone applications along side traditional operating systems. The design goal is to provide an environment allowing normal users to execute, interact and manage these custom kernels in much the same way they would with typical applications. The development environment is a set of modular component libraries providing necessary system services, and a familiar debug environment provided by exposing partition memory and control interfaces to a "controller" partition. We describe the implementation of our prototype using the IBM research hypervisor along with the Linux kernel and explore potential applications that could benefit from this new environment.
SmartApps
Authors: Rauchwerger Lawrence , Amato Nancy M.
Published: July 2006

One general avenue to obtain optimized performance on large and complex systems is to approach optimization from a global perspective of the complete system in a customized manner for each application, i.e.,
application-centric optimization
. Lately, there have been encouraging developments in reconfigurable operating systems and hardware that will enable customized optimization. For example, machines built with PIM's and FPGA's can be quickly reconfigured to better fit a certain application and operating systems, such as IBM's K42, can have their services customized to fit the needs and characteristics of an application. While progress in operating system and hardware and hardware has made re-configuration possible, we still need strategies and techniques to exploit them for improved application performance.In this paper, we describe the approach we are using in our smart application (SMARTAPPS) project. In the SMARTAPP executable, the compiler embeds most run-time system services and a feedback loop to monitor performance and trigger run-time adaptations. At run-time, after incorporating the code's input and determining the system's state, the SMARTAPP performs an
instance
specific optimization. During execution, the application continually monitors its performance and the available resources to determine if restructuring should occur. The framework includes mechanisms for performing the actual restructuring at various levels including: algorithmic adaptation, tuning reconfigurable OS services (scheduling policy, page size, etc.), and system configuration (e.g., number of processors). This paper concentrates on the techniques for providing customized system services for communication, thread scheduling, memory management, and performance monitoring and modeling.
Insights into providing dynamic adaptation of operating system policies
Authors: Teller Patricia J. , Seelam Seetharami R.
Published: July 2006

The DAiSES research project, initiated in September 2004, has allowed us to understand the potential value of and challenges associated with providing dynamic OS policy adaptation. During this period the project has had two major research foci, investigation of process scheduling as a possible target of adaptation and dynamic adaptation of I/O scheduling. The paper revisits the DAiSES methodology, elucidating it in terms of these two adaptation targets. It abstracts the challenges in dynamic adaptation of stateless systems and provides solutions to these challenges, exemplifying them in the context of I/O schedulers.
How Ada 2005 impacts CS1/2
Authors: Carlisle Martin C.
Published: July 2006

Ada 2005 is the second revision of the Ada standard. It makes changes to the language definition in a number of areas. We summarize which changes have the greatest impact on introductory computer science classes that use Ada.
LISP bulletin
Authors: Bobrow D. G.
Published: July 2006

This first (long delayed) LISP Bulletin contains samples of most of those types of items which the editor feels are relevant to this publication. These include announcements of new (i.e. not previously announced here) implementations of LISP (or closely related) systems; quick tricks in LISP; abstracts of LISP related papers; short writeups and listings of useful programs; and longer articles on problems of general interest to the entire LISP community. Printing of these last articles in the Bulletin does not interfere with later publications in formal journals or books. Short write-ups of new features added to LISP are of interest, preferably upward compatible with LISP 1.5, especially if they are illustrated by programming examples.
The Atomos transactional programming language
Authors: Carlstrom Brian D. , McDonald Austen , Chafi Hassan , Chung JaeWoong , Minh Chi Cao , Kozyrakis Christos , Olukotun Kunle
Published: July 2006

Atomos is the first programming language with implicit transactions, strong atomicity, and a scalable multiprocessor implementation. Atomos is derived from Java, but replaces its synchronization and conditional waiting constructs with simpler transactional alternatives.The Atomos watch statement allows programmers to specify fine-grained watch sets used with the Atomos retry conditional waiting statement for efficient transactional conflict-driven wakeup even in transactional memory systems with a limited number of transactional contexts. Atomos supports
open-nested transactions
, which are necessary for building both scalable application programs and virtual machine implementations.The implementation of the Atomos scheduler demonstrates the use of open nesting within the virtual machine and introduces the concept of transactional memory violation handlers that allow programs to recover from data dependency violations without rolling back.Atomos programming examples are given to demonstrate the usefulness of transactional programming primitives. Atomos and Java are compared through the use of several benchmarks. The results demonstrate both the improvements in parallel programming ease and parallel program performance provided by Atomos.
Fast and flexible instruction selection with on-demand tree-parsing automata
Authors: Ertl M. Anton , Casey Kevin , Gregg David
Published: July 2006

Tree parsing as supported by code generator generators like BEG, burg, iburg, lburg and ml-burg is a popular instruction selection method. There are two existing approaches for implementing tree parsing: dynamic programming, and tree-parsing automata; each approach has its advantages and disadvantages. We propose a new implementation approach that combines the advantages of both existing approaches: we start out with dynamic programming at compile time, but at every step we generate a state for a tree-parsing automaton, which is used the next time a tree matching the state is found, turning the instruction selector into a fast tree-parsing automaton. We have implemented this approach in the Gforth code generator. The implementation required little effort and reduced the startup time of Gforth by up to a factor of 2.5.
Auto-vectorization of interleaved data for SIMD
Authors: Nuzman Dorit , Rosen Ira , Zaks Ayal
Published: July 2006

Most implementations of the Single Instruction Multiple Data (SIMD) model available today require that data elements be packed in vector registers. Operations on disjoint vector elements are not supported directly and require explicit data reorganization manipulations. Computations on non-contiguous and especially interleaved data appear in important applications, which can greatly benefit from SIMD instructions once the data is reorganized properly. Vectorizing such computations efficiently is therefore an ambitious challenge for both programmers and vectorizing compilers. We demonstrate an automatic compilation scheme that supports effective vectorization in the presence of interleaved data with constant strides that are powers of 2, facilitating data reorganization. We demonstrate how our vectorization scheme applies to dominant SIMD architectures, and present experimental results on a wide range of key kernels, showing speedups in execution time up to 3.7 for interleaving levels (stride) as high as 8.
Pruning dynamic slices with confidence
Authors: Zhang Xiangyu , Gupta Neelam , Gupta Rajiv
Published: July 2006

Given an incorrect value produced during a failed program run (e.g., a wrong output value or a value that causes the program to crash), the backward dynamic slice of the value very frequently captures the faulty code responsible for producing the incorrect value. Although the dynamic slice often contains only a small percentage of the statements executed during the failed program run, the dynamic slice can still be large and thus considerable effort may be required by the programmer to locate the faulty code.In this paper we develop a strategy for pruning the dynamic slice to identify a subset of statements in the dynamic slice that are likely responsible for producing the incorrect value. We observe that some of the statements used in computing the incorrect value may also have been involved in computing correct values (e.g., a value produced by a statement in the dynamic slice of the incorrect value may also have been used in computing a correct output value prior to the incorrect value). For each such executed statement in the dynamic slice, using the value profiles of the executed statements, we compute a confidence value ranging from 0 to 1 - a higher confidence value corresponds to greater likelihood that the execution of the statement produced a correct value. Given a failed run involving execution of a single error, we demonstrate that the pruning of a dynamic slice by excluding only the statements with the confidence value of 1 is highly effective in reducing the size of the dynamic slice while retaining the faulty code in the slice. Our experiments show that the number of distinct statements in a pruned dynamic slice are 1.79 to 190.57 times less than the full dynamic slice. Confidence values also prioritize the statements in the dynamic slice according to the likelihood of them being faulty. We show that examining the statements in the order of increasing confidence values is an effective strategy for reducing the effort of fault location.
Context-sensitive domain-independent algorithm composition and selection
Authors: Johnson Troy A. , Eigenmann Rudolf
Published: July 2006

Progressing beyond the productivity of present-day languages appears to require using domain-specific knowledge. Domain-specific languages and libraries (DSLs) proliferate, but most optimizations and language features have limited portability because each language's semantics are related closely to its domain. We explain how any DSL compiler can use a
domain-independent
AI planner to implement algorithm composition
as a language feature
. Our notion of composition addresses a common DSL problem: good library designers tend to minimize redundancy by including only fundamental procedures that users must chain together into call sequences. Novice users are confounded by not knowing an appropriate sequence to achieve their goal. Composition allows the programmer to define and call an abstract algorithm (AA) like a procedure. The compiler replaces an AA call with a sequence of library calls, while considering the calling context. Because AI planners compute a sequence of operations to reach a goal state, the compiler can implement composition by analyzing the calling context to provide the planner's initial state. Nevertheless, mapping composition onto planning is not straightforward because applying planning to software requires extensions to classical planning, and procedure specifications may be incomplete when expressed in a planning language. Compositions may not be provably correct, so our approach mitigates semantic incompleteness with unobtrusive programmer-compiler interaction. This tradeoff is key to making composition a practical and natural feature of otherwise imperative languages, whose users eschew complex logical specifications. Compositions satisfying an AA may not be equal in performance, memory usage, or precision and require selection of a preferred solution. We examine language design and implementation issues, and we perform a case study on the BioPerl bioinformatics library.
Automatic instruction scheduler retargeting by reverse-engineering
Authors: Bridges Matthew J. , Vachharajani Neil , Ottoni Guilherme , August David I.
Published: July 2006

In order to generate high-quality code for modern processors, a compiler must aggressively schedule instructions, maximizing resource utilization for execution efficiency. For a compiler to produce such code, it must avoid structural hazards by being aware of the processor's available resources and of how these resources are utilized by each instruction. Unfortunately, the most prevalent approach to constructing such a scheduler, manually discovering and specifying this information, is both tedious and error-prone. This paper presents a new approach which, when given a processor or processor model, automatically determines this information. After establishing that the problem of perfectly determining a processor's structural hazards through probing is not solvable, this paper proposes a heuristic algorithm that discovers most of this information in practice. This can be used either to alleviate the problems associated with manual creation or to verify an existing specification. Scheduling with these automatically derived structural hazards yields almost all of the performance gain achieved using perfect hazard information.
Online performance auditing
Authors: Lau Jeremy , Arnold Matthew , Hind Michael , Calder Brad
Published: July 2006

As hardware complexity increases and virtualization is added at more layers of the execution stack, predicting the performance impact of optimizations becomes increasingly difficult. Production compilers and virtual machines invest substantial development effort in performance tuning to achieve good performance for a range of benchmarks. Although optimizations typically perform well on average, they often have unpredictable impact on running time, sometimes degrading performance significantly. Today's VMs perform sophisticated feedback-directed optimizations, but these techniques do not address performance degradations, and they actually make the situation worse by making the system more unpredictable.This paper presents an online framework for evaluating the effectiveness of optimizations, enabling an online system to automatically identify and correct performance anomalies that occur at runtime. This work opens the door for a fundamental shift in the way optimizations are developed and tuned for online systems, and may allow the body of work in offline empirical optimization search to be applied automatically at runtime. We present our implementation and evaluation of this system in a product Java VM.
LOCKSMITH
Authors: Pratikakis Polyvios , Foster Jeffrey S. , Hicks Michael
Published: July 2006

One common technique for preventing data races in multi-threaded programs is to ensure that all accesses to shared locations are consistently protected by a lock. We present a tool called LOCKSMITH for detecting data races in C programs by looking for violations of this pattern. We call the relationship between locks and the locations they protect
consistent correlation
, and the core of our technique is a novel constraint-based analysis that infers consistent correlation context-sensitively, using the results to check that locations are properly guarded by locks. We present the core of our algorithm for a simple formal language λ
>
which we have proven sound, and discuss how we scale it up to an algorithm that aims to be sound for all of C. We develop several techniques to improve the precision and performance of the analysis, including a sharing analysis for inferring thread locality; existential quantification for modeling locks in data structures; and heuristics for modeling unsafe features of C such as type casts. When applied to several benchmarks, including multi-threaded servers and Linux device drivers, LOCKSMITH found several races while producing a modest number of false alarm.
The Compressor
Authors: Kermany Haim , Petrank Erez
Published: July 2006

The widely used Mark-and-Sweep garbage collector has a drawback in that it does not move objects during collection. As a result, large long-running realistic applications, such as Web application servers, frequently face the fragmentation problem. To eliminate fragmentation, a heap compaction is run periodically. However, compaction typically imposes very long undesirable pauses in the application. While efficient concurrent collectors are ubiquitous in production runtime systems (such as JVMs), an efficient non-intrusive compactor is still missing.In this paper we present the Compressor, a novel compaction algorithm that is concurrent, parallel, and incremental. The Compressor compacts the entire heap to a single condensed area, while preserving the objects' order, but reduces pause times significantly, thereby allowing acceptable runs on large heaps. Furthermore, the Compressor is the first compactor that requires only a single heap pass. As such, it is the most efficient compactors known today, even when run in a parallel Stop-the-World manner (i.e., when the program threads are halted). Thus, to the best of our knowledge, the Compressor is the most efficient compactor known today. The Compressor was implemented on a Jikes Research RVM and we provide measurements demonstrating its qualities.
On the merits of e-learning
Authors: Davies Gordon
Published: July 2006

Over the last few years, I have become increasingly involved in elearning. I was fortunate to be invited to serve on the Steering Committee of the Swiss Virtual Campus [1] and this has enabled me to see at first hand the many elearning developments that are taking place on campus universities in Switzerland. The Swiss Virtual campus project started in 1999 and has had a significant impact on elearning in Switzerland. Approximately CHF 50-million or € 35-million in funds have been distributed to various university consortia in order to develop elearning courses. They used a fifty-fifty financing model between federal government and educational institutions; ten universities, two Swiss federal institutes of technology, and seven universities of applied sciences took part. Many outstanding examples of elearning were produced, although I have seen few in the informatics area. SVC courses are not usually whole programmes, but teaching units available on the Internet. They replace conventional university lectures, many of which are held in severely overcrowded auditoriums. At this stage, it should be emphasised that SVC is not aiming to transfer entire courses of study to the Internet. On the contrary, compulsory online courses are intended to supplement existing lectures and training programmes.
Undergraduate studies in computer science and engineering
Authors: Ilias Aristidis , Kordaki Maria
Published: July 2006

This study focuses on gender issues in terms of participation, achievement and duration of studies at the Tertiary level of education in Computer Science and Engineering (CS&E). For this reason, 1957 degrees earned by Computer Engineers were studied. These diplomas cover a 21 year period of graduation at the Computer Engineering and Informatics Department (CEID), University of Patras, Greece. The analysis of the data shows that: a) male graduate students outnumbered the female ones by three to one, b) in terms of achievement, no significant differences exist between male and female graduate computer engineers, and c) female students complete their studies earlier than their male counterparts.
Educating the e-citizen
Authors: Di Cosmo Roberto
Published: July 2006

The education of computer science students is a challenging task: the compexity of the material that is part of a curriculum is increasing at an astonishing pace, following the complexity of the software artifacts that our students are trained to master.The free software revolution has entered the scene, and offers new challenges, and new solutions; on one side, the sheer amount of code available as free software today calls for the education of a new kind of computer scientist, and software engineer: they must be prepared to manage the complexity of software systems built out of components coming from all around the planet, evolving at fast, yet unrelated pace, and whose source code is freely available for inspection or customization. On the other side, this very same availability of the source code gives our student the possibility to reach a level of technical insight that was previously unthinkable.In this talk, we will try to give a few examples of new research challenges emerging from the free software revolution, as well as evidence that teaching computer science can no longer be done without free software.Nevertheless, it would be a huge error to believe that we are only called to educate computer scientists and software engineers, and hence could stick to a purely technical view of our duties: due to the unprecedented penetration of ICT in every aspects of everyday life, we are also, as computer science teachers, the first responsible of educating the citizens of tomorrow.This duty will not be fulfilled by simply passing over technical details: as the recent example of the electonic voting machines clearly show, we face the challenge of educating e-citizens which are not simply computer literate, but have a mental model of computer machinery allowing them a clear understanding of the limitations of this technology which is beautiful, but in no way magic.
Scaling up a distance education program in computer science
Authors: Pullen J. Mark
Published: July 2006

This paper describes issues and their solutions in presenting a graduate program in distance education online. The author developed significant experience in synchronous Internet distributed education by experimental teaching online. This process has produced an open-source software system for synchronous online teaching and learning, Network EducationWare. That system is described, along with experience in expanding its use from one course to a graduate Computer Science degree program. Detailed discussions elaborate problems encountered and their solutions. Experience has shown that online teaching in this format is beneficial to students, supportable by faculty, and affordable by the educational institution, in part due to the effective implementation described.
An introspective approach to marking graphical user interfaces
Authors: Gray Geoffrey R. , Higgins Colin A.
Published: July 2006

The increasing expectations of users for ever more functional and impressive Graphical User Interfaces (GUIs) have instigated changes to the way in which programming languages are taught. The rise in popularity of the subject matter has caused problems for lecturers with regards to time and costs. The numbers of student solutions that need to be marked in short periods of time are barely feasible for one person alone or even a marking team to manage; this has been a major influence in the development of marking systems. No system exists for marking GUI programs, indeed few exist for marking any programs. This paper presents the concepts behind an introspective testing and marking tool for GUIs. The hierarchical relationship between interface components and the use of an introspective approach allows us to retrieve data from the GUI components themselves, rather than through relative estimations. This not only allows for dynamic testing of the student's solutions but also aesthetic testing measures.
WADEIn II
Authors: Brusilovsky Peter , Loboda Tomasz D.
Published: July 2006

Adaptive explanatory visualization is an attempt to integrate two promising approaches to program visualization: adaptive visualization and explanatory visualization. The goal of this paper is to demonstrate the ideas of adaptive explanatory visualization using a practical example. The paper introduces the WADEIn II system for the visualization of expression evaluation in the C programming language, shows how expression evaluation visualizations can be made adaptive, and explains our approach to the adaptive generation of explanations.
Peer teaching extends HCI learning
Authors: Plimmer Beryl , Amor Robert
Published: July 2006

Crafting a good user experience requires skills in several disciplines. Few people have this breadth of knowledge, and undergraduate computer science students are no exception. Encouraging computer science students to appreciate the ways that other disciplines contribute to Human Computer Interaction is important, yet difficult. Our students learn about this disciplinary interdependence through peer teaching as part of a group project. Each group contains students with complementary skills and we expect a transfer of knowledge. Here we discuss the educational theory behind the project, the project's essential elements and an evaluation of how it aids learning. The model we have developed could be easily adapted for other courses which draw on diverse skills.
Student activity in seminars
Authors: Axelsson Karin , Melin Ulf , Wedlund Tommy
Published: July 2006

In this paper, we describe assessment in seminars where high student activity is encouraged. The aim of our work has been to design assessment events that result in deep learning and high student activity, but still provide the teacher with a reliable basis for justice in examinations. We will discuss a course in electronic commerce where we have been working with two progressive seminars. Experiences from this attempt are discussed and analysed in the paper.
New algorithms research for first year students
Authors: Wirth Anthony , Bertolacci Michael
Published: July 2006

Motivated first-year undergraduate students should be exposed to some of the processes of research and some of the latest results. This brings them into the university culture quickly and encourages them to feel part of the development of the computer science discipline.To this end, students in a second-semester first-year computer science subject were presented with a programming project in which the goal was to implement several approximation algorithms for an active research problem. In addition, they were asked to complete four related mathematical puzzles. The lecturer author and the student author show how this project proved to be an exciting experience for them both. The paper concludes with some suggestions for expanding the research influence in this subject.
Reductive thinking in undergraduate CS courses
Authors: Armoni Michal , Gal-Ezer Judith , Hazzan Orit
Published: July 2006

This paper describes research on the perception of undergraduate students of the concept of reduction. Specifically, based on an analysis of students' answers to questions addressing different CS topics, we present several findings regarding the ways in which undergraduate students conceive of and apply reduction. In addition to the research description and results, the paper discusses the role of reduction in CS and suggests several teaching applications.
Web animation to communicate iterative development
Authors: Boisvert Charles
Published: July 2006

eL-CID (e-Learning to Communicate Iterative Development) demonstrates computer programs' iterative design using computer animation. It translates descriptions of iterative editing into a dynamic visualisation of the changes, as if code was being edited in front of the user.A range of animations has been developed and the system evaluated through action research. The evaluation reveals a great diversity in the patterns of usage of the animations among students. It also identifies directions for further development and work that eL-CID enables in program development cognition.
Let's modify the objects-first approach into design-patterns-first
Authors: Pecinovský Rudolf , Pavlíčková Jarmila , Pavlíček Luboš
Published: July 2006

Design patterns have already gained great importance in both design and implementation of object-oriented software in many diverse areas of applications. In order to get the ideas of design patterns firmly established, they should be taught right from the beginning of a course. This paper outlines how the presently used Objects-First approach can be extended and changed into the Design-Patterns-First approach. The outline of the first five lectures of our university course, which is structured according to this approach, is presented. Some examples of design patterns suitable for the very first lecture of such introductory course are also included.
"Python first"
Authors: Radenski Atanas
Published: July 2006

The emphasis on Java and other commercial languages in CS1 has established the perception of computer science as a dry and technically difficult discipline among undecided students who are still seeking careers. This may not be a big problem during an enrolment boom, but in times of decreased enrolment such negative perception may have a devastating effect on computer science programs and therefore should not be ignored. We have made our CS1 course offerings more attractive to students (1) by introducing an easy to learn yet effective scripting language - Python, (2) by making all course resources available in a comprehensive online study pack, and (3) by offering an extensive set of detailed and easy to follow self-guided labs. Our custom-designed online study pack comprises a wealth of new, original learning modules: extensive e-texts, detailed self-guided labs, numerous sample programs, quizzes, and slides. Our recent student survey demonstrates that students like and prefer Python as a first language and that they also percept the online study pack as very beneficial. Our "Python First" course, originally required for computer science majors, has been so well received that it has been recently approved as a general education science elective, thus opening new recruitment opportunities for the computer science major. Our "Python First" digital pack is published online at http://studypack.com.
Gender gap in computer science does not exist in one former soviet republic
Authors: Gharibyan Hasmik , Gunsaulus Stephan
Published: July 2006

It is well known that women's involvement in the field of Computer Science is very low in the USA. This is viewed as a significant problem and has become a great concern to educators and professionals in the CS field. Although the low participation rate of women is an issue in many countries around the world, the truth is that it is not a universal problem: there are countries, such as countries of the former Soviet Union, that have well represented female populations in Computer Science. The Soviet society, culture and educational system in many ways are quite different than America's. It is important and helpful to explore these differences with the intention to identify factors in the Soviet system/culture that may contribute to attracting women to Computer Science.In 2005 we started an international investigation of the issue of women in CS in two different societies/cultures - American and Soviet. Our research is intended to bring a better understanding of the social perceptions and influences that make this issue a problem in the United States, and will contribute to designing better strategies in efforts of mitigating the low participation of women in the field of Computer Science. In this paper we present the results of an extensive study in one former Soviet republic, the Republic of Armenia.
Once she makes it, she is there
Authors: Vilner Tamar , Zur Ela
Published: July 2006

When you sit in a Computer Science lecture at any university in the western world, what are the chances that the person sitting next to you will be a woman? Furthermore, what are the chances that the lecturer will be a woman? And if we were to enter a Computer Science classroom in a high school, what percentage of the students would be female? Computer Science is possibly one of the few remaining disciplines that is almost entirely controlled by men in the university staff, and in which the percentage of female students is usually below 30%. This phenomenon is prevalent throughout the western world.In this paper we present data about women studying Computer Science in universities and high schools in Israel. It deals with the specific problems that lead to a low rate of female enrollment in Computer Science courses and a high female-dropout rate. It describes some suggested solutions to encourage female enrollment and retention rate in Computer Science programs. The research was done at the Open University of Israel. An attempt has been made to identify whether there is a specific stage in the undergraduate program that is the most difficult for women to pass. Finally, we discuss ways to assist female students and enable them to overcome this obstacle and remain in the program.
Students learn CS in different ways
Authors: Berglund Anders , Wiggberg Mattias
Published: July 2006

This empirical study demonstrates that students' learning of computer science takes place in qualitatively different ways. The results consists of categories, where each category describe a certain way, in which the students approach their learning. The paper demonstrates that some of the ways to tackle the learning are better than others in resulting in a good learning outcome, and that they therefore should be encouraged. The data, underlying these results, are collected through interviews with third and fourth year students in two countries, and are further analyzed, using a phenomenographic research approach.
Teaching software project management using simulations
Authors: Hood Dennis J. , Hood Cynthia S.
Published: July 2006

It is increasingly recognized that project management is an important aspect of the computing curriculum. Since many students do not have project experience, it is important to provide this in conjunction with project management concepts. This paper describes our experiences with various project simulations. In particular, we developed a LEGO® bridge building project to teach students how to measure progress and manage change.
Living in a digital world
Authors: Joel William J.
Published: July 2006

ACM Curriculum Guidelines recommend that a degree on Computer Science include topics concerning the societal and ethical impact of computer technologies. As an alternative to traditional approaches to teaching these concepts, a course was created based on selected fictional narratives. A benefit of using fiction is that it often reflects general societal views as opposed to those of the technologically adept.
Engaging computer science education
Authors: Joel William J.
Published: July 2006

One of the meanings of the term 'engage' is "to win over, or to attract." Isn't that what we, as computer science educators, attempt to do each and every day of our teaching lives? We stand in front of, or among, a group of students, ready to convey to them our love of our chosen discipline, in the hopes that they will come to enjoy it as much as we do. Still, just the term computer science can bring visions of mathematical nightmares to the average student. Of course, we know better. We can see that much of what we do, as computer scientists, is both an art as well as a science. The question arises then as to how we can convey this synergy between the two sides of computer science to our students.
Activities of the ACM two-year college education committee
Authors: Campbell Robert D. , Hawthorne Elizabeth K. , Klee Karl J.
Published: July 2006

This poster presentation showcases the accomplishments of the Two-Year College Education Committee (TYCEC), highlights the 2005 - 2006 curricular activities, and illustrates a typical two-year college education model in North America.
Undergraduate involvement in bioinformatics research
Authors: Ellis Heidi J. C.
Published: July 2006

The benefits of individual undergraduate research projects to students include preparation for graduate work, enrichment of the academic experience, honing of problem-solving skills and more. However, the involvement of undergraduates in on-going multi-institution research projects presents a unique set of challenges. This poster describes the issues resulting from the involvement of undergraduates in a bioinformatics research project in the area of Nuclear Magnetic Resonance.