bluuebunny/crossref_metadata_2025 huggingface dataset:
A NEAR-INFRARED FLUORESCENT DEOXYGLUCOSE DERIVATIVE FOR OPTICAL IMAGING OF EXPERIMENTAL ARTHRITIS
Authors: LIU XIUPING , XIONG ZHENGMING , LEE SHEEN-WOO , LEVI JELENA , YAGHOUBI SHAHRIAR , BISWAL SANDIP , GAMBHIR SANJIV SAM , CHENG ZHEN
Published: May 2009

The purpose of this study is to investigate whether a near-infrared fluorescence (NIRF) probe, Cy5.5-D-glucosamine (Cy5.5-2DG), can image arthritis in collagen-induced arthritic (CIA) mice. The presence of arthritis was verified by both visual examination and micro-computed tomography (MicroCT) imaging. CIA mice were imaged by a micro-positron emission tomography (MicroPET) scanner one hour after intravenous injection of 2-deoxy-2-[18F]fluoro-D-glucose ([18F]FDG). After radioactivity of [18F]FDG decayed away, Cy5.5-2DG was injected into a lateral tail vein of the mice. Arthritic tissue targeting and retention of Cy5.5-2DG in CIA mice were evaluated and quantified by an optical imaging system. Inflammatory tissue in CIA mice was clearly visualized by [18F]FDG-MicroPET scan. NIRF imaging of Cy5.5-2DG in the same mice revealed that the pattern of localization of Cy5.5-2DG in the arthritic tissue was very similar to that of [18F]FDG. Quantification analysis further showed that [18F]FDG uptake in arthritic tissues at one hour post-injection (p.i.) and Cy5.5-2DG uptakes at different time points p.i. were all well correlated (r2over 0.65). In conclusion, Cy5.5-DG can detect arthritic tissues in living mice. The good correlation between the [18F]FDG uptake and Cy5.5-2DG accumulation in the same arthritic tissue warrants further investigation of Cy5.5-2DG as an approach for assessment of anti-inflammatory treatments.
INTRINSIC OPTICAL SIGNAL IMAGING OF RETINAL ACTIVITY IN FROG EYE
Authors: YAO XIN-CHENG , LIU LEI , LI YANG-GUO
Published: May 2009

Using a near-infrared (NIR) light flood-illumination imager equipped with a high-speed (120 Hz) CCD camera, we demonstrated optical imaging of stimulus-evoked retinal activity in isolated, but intact, frog eye. Both fast and slow transient intrinsic optical signals (IOSs) were observed. Fast optical response occurred immediately after the stimulus onset, could reach peak magnitude within 100 ms, and correlated tightly with ON and OFF edges of the visible light stimulus; while slow optical response lasted a relatively long time (many seconds). High-resolution images revealed both positive (increasing) and negative (decreasing) IOSs, and dynamic optical change at individual CCD pixels could often exceed 10% of the background light intensity. Our experiment on isolated eye suggests that further development of fast, high (sub-cellular) resolution fundus imager will allow robust detection of fast IOSs in vivo, and thus allow noninvasive, three-dimensional evaluation of retinal neural function.
Semisupervised SVM batch mode active learning with applications to image retrieval
Authors: Hoi Steven C. H. , Jin Rong , Zhu Jianke , Lyu Michael R.
Published: May 2009

Support vector machine (SVM) active learning is one popular and successful technique for relevance feedback in content-based image retrieval (CBIR). Despite the success, conventional SVM active learning has two main drawbacks. First, the performance of SVM is usually limited by the number of labeled examples. It often suffers a poor performance for the small-sized labeled examples, which is the case in relevance feedback. Second, conventional approaches do not take into account the redundancy among examples, and could select multiple examples that are similar (or even identical). In this work, we propose a novel scheme for explicitly addressing the drawbacks. It first learns a kernel function from a mixture of labeled and unlabeled data, and therefore alleviates the problem of small-sized training data. The kernel will then be used for a batch mode active learning method to identify the most informative and diverse examples via a min-max framework. Two novel algorithms are proposed to solve the related combinatorial optimization: the first approach approximates the problem into a quadratic program, and the second solves the combinatorial optimization approximately by a greedy algorithm that exploits the merits of submodular functions. Extensive experiments with image retrieval using both natural photo images and medical images show that the proposed algorithms are significantly more effective than the state-of-the-art approaches. A demo is available at http://msm.cais.ntu.edu.sg/LSCBIR/.
A novel framework for efficient automated singer identification in large music databases
Authors: Shen Jialie , Shepherd John , Cui Bin , Tan Kian-Lee
Published: May 2009

Over the past decade, there has been explosive growth in the availability of multimedia data, particularly image, video, and music. Because of this, content-based music retrieval has attracted attention from the multimedia database and information retrieval communities. Content-based music retrieval requires us to be able to automatically identify particular characteristics of music data. One such characteristic, useful in a range of applications, is the identification of the singer in a musical piece. Unfortunately, existing approaches to this problem suffer from either low accuracy or poor scalability. In this article, we propose a novel scheme, calledHybrid Singer Identifier(HSI), for efficient automated singer recognition. HSI uses multiple low-level features extracted from both vocal and nonvocal music segments to enhance the identification process; it achieves this via a hybrid architecture that builds profiles of individual singer characteristics based on statistical mixture models. An extensive experimental study on a large music database demonstrates the superiority of our method over state-of-the-art approaches in terms of effectiveness, efficiency, scalability, and robustness.
Kode viciousObvious truths
Authors: Neville-Neil George V.
Published: May 2009

How to determine when to put the brakes on late-running projects and untested software patches.
ViewpointWhy "open source" misses the point of free software
Authors: Stallman Richard
Published: May 2009

Decoding the important differences in terminology, underlying philosophy, and value systems between two similar categories of software.
Network front-end processors, yet again
Authors: O'Dell Mike
Published: May 2009

The history of NFE processors sheds light on the trade-offs involved in designing network stack software.
The Claremont report on database research
Authors: Agrawal Rakesh , Ailamaki Anastasia , Bernstein Philip A. , Brewer Eric A. , Carey Michael J. , Chaudhuri Surajit , Doan Anhai , Florescu Daniela , Franklin Michael J. , Garcia-Molina Hector , Gehrke Johannes , Gruenwald Le , Haas Laura M. , Halevy Alon Y. , Hellerstein Joseph M. , Ioannidis Yannis E. , Korth Hank F. , Kossmann Donald , Madden Samuel , Magoulas Roger , Ooi Beng Chin , O'Reilly Tim , Ramakrishnan Raghu , Sarawagi Sunita , Stonebraker Michael , Szalay Alexander S. , Weikum Gerhard
Published: May 2009

Database research is expanding, with major efforts in system architecture, new languages, cloud services, mobile and virtual worlds, and interplay between structure and text.
One laptop per child
Authors: Kraemer Kenneth L. , Dedrick Jason , Sharma Prakul
Published: May 2009

The vision is being overwhelmed by the reality of business, politics, logistics, and competing interests worldwide.
How computer science serves the developing world
Authors: Dias M. Bernardine , Brewer Eric
Published: May 2009

Information and communication technology for development can greatly improve quality of life for the world's neediest people.
Two hardware-based approaches for deterministic multiprocessor replay
Authors: Hower Derek R. , Montesinos Pablo , Ceze Luis , Hill Mark D. , Torrellas Josep
Published: May 2009

Modern computer systems are inherently nondeterministic due to a variety of events that occur during an execution, including I/O, interrupts, and DMA fills. The lack of repeatability that arises from this nondeterminism can make it difficult to develop and maintain correct software. Furthermore, it is likely that the impact of nondeterminism will only increase in the coming years, as commodity systems are now shared-memory multiprocessors. Such systems are not only impacted by the sources of nondeterminism in uniprocessors, but also by the outcome of memory races among concurrent threads.

In an effort to help ease the pain of developing software in a nondeterministic environment, researchers have proposed adding
deterministic replay
capabilities to computer systems. A system with a deterministic replay capability can record sufficient information during an execution to enable a replayer to (later) create an equivalent execution despite the inherent sources of nondeterminism that exist. With the ability to replay an execution verbatim, many new applications may be possible:

Debugging:
Deterministic replay could be used to provide the illusion of a
time-travel debugger
that has the ability to selectively execute both forward and backward in time.

Security:
Deterministic replay could also be used to enhance the security of software by providing the means for an in-depth analysis of an attack, hopefully leading to rapid patch deployment and a reduction in the economic impact of new threats.

Fault Tolerance:
With the ability to replay an execution, it may also be possible to develop hot-standby systems for critical service providers using commodity hardware. A virtual machine (VM) could, for example, be fed, in real time, the replay log of a primary server running on a physically separate machine. The standby VM could use the replay log to mimic the primary's execution, so that in the event that the primary fails, the backup can take over operation with almost zero downtime.
Adaptive simulated annealing: A near-optimal connection between sampling and counting
Authors: Štefankovič Daniel , Vempala Santosh , Vigoda Eric
Published: May 2009

We present a near-optimal reduction from approximately counting the cardinality of a discrete set to approximately sampling elements of the set. An important application of our work is to approximating the partition function
Z
of a discrete system, such as the Ising model, matchings or colorings of a graph. The typical approach to estimating the partition function
Z
(β
*
) at some desired inverse temperature β
*
is to define a sequence, which we call a
cooling schedule
, β
0
= 0 < β
1
< … < β
ℓ
= β
*
where
Z(0)
is trivial to compute and the ratios
Z
(β

i
+1

)/
Z
(β

i

) are easy to estimate by sampling from the distribution corresponding to
Z
(β

i

). Previous approaches required a cooling schedule of length
O
*
(ln
A
) where
A
=
Z
(0), thereby ensuring that each ratio
Z
(β

i
+1

)/
Z
(β

i

) is bounded. We present a cooling schedule of length ℓ =
O
*
(√ ln
A
).

For well-studied problems such as estimating the partition function of the Ising model, or approximating the number of colorings or matchings of a graph, our cooling schedule is of length
O
*
(√
n
), which implies an overall savings of
O
*
(
n
) in the running time of the approximate counting algorithm (since roughly ℓ samples are needed to estimate each ratio).

A similar improvement in the length of the cooling schedule was recently obtained by Lovász and Vempala in the context of estimating the volume of convex bodies. While our reduction is inspired by theirs, the discrete analogue of their result turns out to be significantly more difficult. Whereas a fixed schedule suffices in their setting, we prove that in the discrete setting we need an adaptive schedule, that is, the schedule depends on
Z
. More precisely, we prove any nonadaptive cooling schedule has length at least
O
*
(ln
A
), and we present an algorithm to find an adaptive schedule of length
O
*
(√ ln
A
).
Affine double- and triple-product wavelet integrals for rendering
Authors: Sun Bo , Ramamoorthi Ravi
Published: May 2009

Many problems in computer graphics involve integrations of products of functions. Double- and triple-product integrals are commonly used in applications such as all-frequency relighting or importance sampling, but are limited to distant illumination. In contrast, near-field lighting from planar area lights involves an affine transform of the source radiance at different points in space. Our main contribution is a novel affine double- and triple-product integral theory; this generalization enables one of the product functions to be scaled and translated. We study the computational complexity in a number of bases, with particular attention to the common Haar wavelets. We show that while simple analytic formulae are not easily available, there is considerable sparsity that can be exploited computationally. We demonstrate a practical application to compute near-field lighting from planar area sources, that can be easily combined with most relighting algorithms. We also demonstrate initial results for wavelet importance sampling with near-field area lights, and image processing directly in the wavelet domain.
Interpolatory point set surfaces—convexity and Hermite data
Authors: Alexa Marc , Adamson Anders
Published: May 2009

Point set surfaces define a (typically) manifold surface from a set of scattered points. The definition involves weighted centroids and a gradient field. The data points are interpolated if singular weight functions are used to define the centroids. While this way of deriving an interpolatory scheme appears natural, we show that it has two deficiencies: Convexity of the input is not preserved and the extension to Hermite data is numerically unstable. We present a generalization of the standard scheme that we call
Hermite point set surface
. It allows interpolating, given normal constraints in a stable way. It also yields an intuitive parameter for shape control and preserves convexity in most situations. The analysis of derivatives also leads to a more natural way to define normals, in case they are not supplied with the point data. We conclude by comparing to similar surface definitions.
Introduction to the Special Issue on Aging and Information Technology
Authors: Czaja Sara J. , Gregor Peter , Hanson Vicki L.
Published: May 2009

This article provides an introduction to the Special Issue on Aging.
Being Old Doesn’t Mean Acting Old
Authors: Wolters Maria , Georgila Kallirroi , Moore Johanna D. , MacPherson Sarah E.
Published: May 2009

Most studies on adapting voice interfaces to older users work top-down by comparing the interaction behavior of older and younger users. In contrast, we present a bottom-up approach. A statistical cluster analysis of 447 appointment scheduling dialogs between 50 older and younger users and 9 simulated spoken dialog systems revealed two main user groups, a “social” group and a “factual” group. “Factual” users adapted quickly to the systems and interacted efficiently with them. “Social” users, on the other hand, were more likely to treat the system like a human, and did not adapt their interaction style. While almost all “social” users were older, over a third of all older users belonged in the “factual” group. Cognitive abilities and gender did not predict group membership. We conclude that spoken dialog systems should adapt to users based on observed behavior, not on age.
Exploring Methods to Improve Pen-Based Menu Selection for Younger and Older Adults
Authors: Moffatt Karyn , McGrenere Joanna
Published: May 2009

Tablet PCs are gaining popularity, but many individuals still struggle with pen-based interaction. In a previous baseline study, we examined the types of difficulties younger and older adults encounter when using pen-based input. The research reported in this article seeks to address one of these errors, namely, missing just below. This error occurs in a menu selection task when a user’s selection pattern is downwardly shifted, such that the top edge of the menu item below the target is selected relatively often, while the corresponding top edge of the target itself is seldom selected. We developed two approaches for addressing missing just below errors: reassigning selections along the top edge and deactivating them. In a laboratory evaluation, only the deactivated edge approach showed promise overall. Further analysis of our data revealed that individual differences played a large role in our results and identified a new source of selection difficulty. Specifically, we observed two error-prone groups of users: the low hitters, who, like participants in the baseline study, made missing just below errors, and the high hitters, who, in contrast, had difficulty with errors on the item above. All but one of the older participants fell into one of these error-prone groups, reinforcing that older users do need better support for selecting menu items with a pen. Preliminary analysis of the performance data suggests both of our approaches were beneficial for the low hitters, but that additional techniques are needed to meet the needs of the high hitters and to address the challenge of supporting both groups in a single interface.
Disability, Age, and Informational Privacy Attitudes in Quality of Life Technology Applications
Authors: Beach Scott , Schulz Richard , Downs Julie , Matthews Judith , Barron Bruce , Seelman Katherine
Published: May 2009

Technology aimed at enhancing function and enabling independent living among older and disabled adults is a growing field of research. Privacy concerns are a potential barrier to adoption of such technology. Using data from a national Web survey (n=1,518), we focus on perceived acceptability of sharing information about toileting, taking medications, moving about the home, cognitive ability, driving behavior, and vital signs with five targets: family, healthcare providers, insurance companies, researchers, and government. We also examine acceptability of recording the behaviors using three methods: video with sound, video without sound, and sensors. Results show that sharing or recording information about toileting behavior; sharing information with the government and insurance companies; and recording the information using video were least acceptable. Respondents who reported current disability were significantly more accepting of sharing and recording of information than nondisabled adults, controlling for demographic variables, general technology attitudes, and assistive device use. Results for age were less consistent, although older respondents tended to be more accepting than younger respondents. The study provides empirical evidence from a large national sample of the implicit trade-offs between privacy and the potential for improved health among older and disabled adults in quality of life technology applications.
All I really need to know I learned in CS1
Authors: Koffman Elliot B.
Published: May 2009

Over the last 45 years as a student and faculty member in Computer Science, I have been involved in learning, teaching, and writing for the CS1 course. I have authored or co-authored textbooks for CS1 in nine different programming languages from Fortran to Java. Each new language was used because of a particular set of features it provided to solve the critical problem in programming or software development of the day. This talk will take a look back at these languages and the extent to which they succeeded. I will also take a look ahead to see what direction CS1 might be taking in the future.
The impact of instructor initiative on student learning
Authors: Boyer Kristy Elizabeth , Phillips Robert , Wallis Michael D. , Vouk Mladen A. , Lester James C.
Published: May 2009

In the quest to find instructional approaches that benefit student learning, engagement, and retention, evidence suggests providing students with hands-on practice is a worthwhile use of class time. This paper presents results from an exploratory study of two different instructional approaches that were encountered in a study of experienced human tutors working with novice computing students engaged in a programming exercise. No difference in average learning gains was found between a
moderate
approach, in which students were given control of problem solving nearly half the time, and a
proactive
approach in which the tutor took initiative nearly three-fourths of the time. Implications of this finding for fine-grained instructional strategy, as well as for broader classroom management decisions, are discussed. This paper also makes the case for the value of one-on-one tutoring studies as an exploratory research methodology for the comparative evaluation of computer science teaching strategies.
GINI
Authors: Maheswaran Muthucumaru , Malozemoff Alexis , Ng Daniel , Liao Sheng , Gu Song , Maniymaran Balasubramaneyam , Raymond Julie , Shaikh Reehan , Gao Yuanyuan
Published: May 2009

GINI (GINI Is Not Internet) is an open-source toolkit for creating virtual micro Internets for teaching and learning computer networking. It provides lightweight virtual elements for machines, routers, switches, and wireless devices that can be interconnected to create virtual networks. The virtual elements run as unprivileged user-level processes. All processes implementing a virtual network can run within a single machine or can be distributed across a set of machines. The GINI provides a user-friendly GUI-based tool for designing, starting, inspecting, and stopping virtual network topologies. This paper describes the different components of GINI, briefly discusses ways of using the toolkit in a computer networking course, and reports on user feedback on an early (incomplete) version of the toolkit.
Engaging students through mobile game development
Authors: Kurkovsky Stan
Published: May 2009

This paper describes using mobile game development as a motivational tool to engage students early in the curriculum. Mobile devices have become an integral part of everyday lives of modern students; using these devices as a part of the coursework may help them see the immediate connections between Computer Science and real-world technology. Compared to traditional game development, programming mobile games is less complex, which enables students with limited programming experience to create playable mobile games within the scope of a single course. Experience presented in this paper may be easily duplicated, but it may be especially useful in the first college-level course for students with CS AP credits.
CS262
Authors: Blaheta Don
Published: May 2009

"Information and knowledge management" is the title and theme of a course outlined in CC2001 that was designed to cover a diverse range of core CS topics. In this paper we discuss our experiences implementing it: it succeeds at guaranteeing coverage, but also acts as a useful prerequisite for advanced electives, and as a survey course that engages student interest in unexpected topics.
SIGCSE
Authors: Cassel Lillian N. , Austing Richard H. , Koffman Elliott
Published: May 2009

This session proposal is part of the recognition of 40 years of SIGCSE. We will look at the organization itself, how it came to be and where it might be going. It will be an interactive session with the participation of the audience informing the SIGCSE leadership of appropriate directions for the future of this group that has been so important to computing education.
Using daily student presentations to address attitudes and communication skills in CS1
Authors: Bennett Chris , Urness Timothy
Published: May 2009

Many CS1 courses lack a breadth in coverage of computing-related topics and do not actively engage in non-programming computer science topics. In addition, many introductory (and advanced) courses fail to help students develop oral communication skills. In this paper, we describe our experience with addressing these issues in CS1 courses at two different institutions through the use of brief, daily student presentations. Not only can this help recruitment and retention, but it helps to develop more well-rounded students. We also describe the results of a survey students take before and after the course to evaluate how participating in the course can affect attitudes and beliefs about computer science.
Student-generated active-learning exercises
Authors: Gehringer Edward F. , Miller Carolyn S.
Published: May 2009

Active-learning exercises are an effective use of class time to bring about desired learning outcomes. Instead of listening to a lecture, students are engaged in tasks that allow them to discover new knowledge, or apply what they have just learned. A barrier to wide usage of active-learning exercises is the need to design them, since few are available in textbooks, technical papers, or on the Web. The work reported in this paper demonstrates that
students
can design active-learning exercises that are worthy of being used in CS1 and CS2. This frees the instructor from having to write all the exercises him/herself. This paper makes three contributions: a methodology for creating student-generated active-learning exercises, several exercises for teaching difficult concepts in CS1 and CS2, and guidance about the kinds of active-learning exercises that students will enjoy and learn most from.
"Georgia computes!"
Authors: Bruckman Amy , Biggers Maureen , Ericson Barbara , McKlin Tom , Dimond Jill , DiSalvo Betsy , Hewner Mike , Ni Lijun , Yardi Sarita
Published: May 2009

Computing education suffers from low enrollment and a lack of diversity. Both of these problems require changes across the entire computing education pipeline. The "Georgia Computes!" alliance, funded by the National Science Foundation's
Broadening Participation in Computing
program, seeks to improve the computing education pipeline in Georgia. "Georgia Computes!" is having a measurable effect at each stage of the pipeline, but has not yet shown an impact across the whole pipeline.
Methodology for successful undergraduate recruiting in computer science at comprehensive public universities
Authors: Morreale Patricia , Kurkovsky Stan , Chang George
Published: May 2009

This paper presents a methodology for increasing undergraduate Computer Science (CS) major enrollment at comprehensive public universities, particularly those that have first generation college students or students from underrepresented populations in professional computer science in the United States. While there has been significant prior discussion of undergraduate recruiting to increase major enrollment in CS, this is the first identification of a systematic approach to recruiting distinct undergraduate student populations into the CS major. Nationally, highly selective and selective universities and colleges have worked within their student populations to increase major enrollments, while CS departments at comprehensive public universities primarily focused on regional recruiting have also worked to identify and increase CS major enrollments. The approach outlined here addresses regional recruiting for undergraduate majors in CS and has been used at two public universities. The resulting methodology serves as a template for any department or faculty member seeking to increase undergraduate enrollment in CS.
Bringing big systems to small schools
Authors: Albrecht Jeannie R.
Published: May 2009

Distributed applications have become a core component of the Internet's infrastructure. However, many undergraduate curriculums, especially at small colleges, do not offer courses that focus on the design and implementation of distributed systems. The courses that are offered address the theoretical aspects of system design, but often fail to provide students with the opportunity to develop and evaluate distributed applications in real-world environments. As a result, undergraduate students are not as prepared as they should be for graduate study or careers in industry. This paper describes an undergraduate course in Distributed Systems that not only studies the key design principles of distributed systems, but also has a unique emphasis on giving students hands-on access to distributed systems through the use of shared computing testbeds, such as PlanetLab and GENI, and open-source technologies, such as Xen and Hadoop. Using these platforms, students can perform large-scale, distributed experimentation even at small colleges.
A "CS 1.5" introduction to web programming
Authors: Stepp Marty , Miller Jessica , Kirst Victoria
Published: May 2009

Web programming is increasing rapidly in importance at the university level, yet there is no consensus about when and how it should be incorporated into the computer science curriculum. This paper describes our results in teaching an experimental introductory web programming course at the University of Washington that has had great success in attracting large numbers of students from inside and outside the computer science major. The course requires CS1 as a prerequisite, striking a good balance between making the course open to non-majors but also more rigorous for students with programming background. We classify the course as "CS 1.5" because many of our students take it between CS1 and CS2. We use our evaluation data to argue that a web programming course at this level leads to a great deal of student interest and enthusiasm, broadens the reach of computer science, and provides a valuable service to other departments.
An historical look at the SIGCSE conference
Authors: White Curt M.
Published: May 2009

This special session will present an historical look at all past SIGCSE conferences, beginning with 2008. If possible, the conference chair, from each conference will present a brief synopsis of his/her conference. This synopsis may include a photo of the conference site, the number of attendees, the paper acceptance ratio, any special awards and the awardees, the "theme" of the conference, any special issues relevant at that conference, and one or two "interesting" events that occurred during that conference.
Report of the 2008 SIGPLAN programming languages curriculum workshop
Authors: Bailey Mark , Bruce Kim , Fisher Kathleen , Harper Robert , Reges Stuart
Published: May 2009

This special session will present a summary of the recommendations of the First SIGPLAN Workshop on Undergraduate Programming Language Curricula, held at Harvard University in May, 2008. The purpose of the workshop was to generate new recommendations for programming languages topics to be learned by all undergraduate CS majors. In this special session we will present a summary of the curriculum recommendations, why they were made, and ways of incorporating them into undergraduate CS curricula.
Test-driven design for introductory OO programming
Authors: Proulx Viera K.
Published: May 2009

Test-Driven Design (TDD) has been shown to increase the productivity of programming teams and improve the quality of the code they produce. However, most of the introductory curricula provide no introduction to test design, no support for defining the tests, and do not insist on a comprehensive test coverage that is the driving force of the TDD.

This paper presents a curriculum, pedagogy, and the software support for introductory object-oriented program design that uses the TDD consistently from the very beginning. The testing software does not increase the program complexity and is designed to work with the simplest programs. It has been used by hundreds of students at several colleges and is freely available on the web.

Our experiences show that besides improving the quality of code students produce, TDD combined with the novice-appropriate test libraries reinforces students' understanding of the object oriented program design.
Test-driven data structures
Authors: Adams Joel
Published: May 2009

Software testing is an increasingly important topic in engineering reliable software systems, and test-driven development is an increasingly popular methodology for building reliable systems. However, most software engineering instructors' courses are already very full, so that increasing coverage of testing in those courses can only occur at the expense of another topic. In this paper, we argue that testing should be introduced early in the CS curriculum, that the
Data Structures
(CS2) course is an especially
natural
place to emphasize unit testing and test-driven development, and that doing is a way to revitalize the CS2 course.
Implications of integrating test-driven development into CS1/CS2 curricula
Authors: Desai Chetan , Janzen David S. , Clements John
Published: May 2009

Many academic and industry professionals have called for more testing in computer science curricula. Test-driven development (TDD) has been proposed as a solution to improve testing in academia. This paper demonstrates how TDD can be integrated into existing course materials without reducing topic coverage. Two controlled experiments were conducted in a CS1/CS2 course in Winter 2008. Following a test-driven learning approach, unit testing was introduced at the beginning of the course and reinforced through example. Results indicate that while student work loads may increase with the incorporation of TDD, students are able to successfully develop unit tests while learning to program.
Exploring factors that influence computer science introductory course students to persist in the major
Authors: Barker Lecia J. , McDowell Charlie , Kalahar Kimberly
Published: May 2009

This paper describes an exploratory study to identify which environmental and student factors best predict intention to persist in the computer science major. The findings can be used to make decisions about initiatives for increasing retention. Eight indices of student characteristics and perceptions were developed using the research-based Student Experience of the Major Survey: student-student interaction; student-faculty interaction; collaborative learning opportunities; pace/workload/prior experience with programming; teaching assistants; classroom climate/pedagogy; meaningful assignments; and racism/sexism. A linear regression revealed that student-student interaction was the most powerful predictor of students' intention to persist in the major beyond the introductory course. Other factors predicting intention to persist were pace/workload/prior experience and male gender. The findings suggest that computer science departments interested in increasing retention of students set structured expectations for student-student interaction in ways that integrate peer involvement as a mainstream activity rather than making it optional or extracurricular. They also suggest departments find ways to manage programming experience gaps in CS1.
Dereferee
Authors: Allevato Anthony , Edwards Stephen H. , Pérez-Quiñones Manuel A.
Published: May 2009

Dynamic memory management and the use of pointers are critical topics in teaching the C++ language. They are also some of the most difficult for students to grasp properly. The responsibility of ensuring that students understand these concepts does not end with the instructor's lectures---a library enhanced with diagnostics beyond those provided by the language's run-time system itself is a useful tool for giving students more detailed information when their code fails.

We have designed such a toolkit, Dereferee, which students can incorporate into their code with minimal intrusion into the learning process. To demonstrate its effectiveness, we examine C++ code from students in a course that relied solely on the built-in memory management behavior of the language, without any significant additional diagnostic or debugging facilities. We instrument this code with Dereferee in order to explore the causes of errors that result in program crashes and to expose hidden faults that previously lay undetected. Dereferee provided enhanced diagnostics for bugs in 63% of student submissions, and pinpointed the source of 83% of abnormal program terminations. 95% of the students would have received extra diagnostic help from using Dereferee.
Retina
Authors: Murphy Christian , Kaiser Gail , Loveland Kristin , Hasan Sahar
Published: May 2009

It is difficult for instructors of CS1 and CS2 courses to get accurate answers to such critical questions as "how long are students spending on programming assignments?", or "what sorts of errors are they making?" At the same time, students often have no idea of where they stand with respect to the rest of the class in terms of time spent on an assignment or the number or types of errors that they encounter. In this paper, we present a tool called
Retina
, which collects information about students' programming activities, and then provides useful and informative reports to both students and instructors based on the aggregation of that data. Retina can also make real-time recommendations to students, in order to help them quickly address some of the errors they make. In addition to describing Retina and its features, we also present some of our initial findings during two trials of the tool in a real classroom setting.
A graphics package for the first day and beyond
Authors: Goldwasser Michael H. , Letscher David
Published: May 2009

We describe cs1graphics, a new Python drawing package designed with pedagogy in mind. The package is simple enough that students can sit down and make use of it from the first day of an introductory class. Yet it provides seamless support for intermediate and advanced lessons as students progress. In this paper, we discuss its versatility in the context of an introductory course. The package is available at www.cs1graphics.org.
QuickDraw
Authors: Stephenson Ben , Taube-Schock Craig
Published: May 2009

This paper describes a new tool for introducing computer graphics and multimedia applications into first year, calledQuickDraw, and our experience using it.QuickDrawprovides an easy to use language and platform independent interface which permits students to create multimedia applications beginning with their first assignment in an introductory computer science course.QuickDrawhas been carefully designed to avoid complex "magical" statements in order to setup, use, or tear down the multimedia environment, making it an appropriate tool for use with students with no prior programming experience. As instructors, we have found thatQuickDraweffectively engages students by allowing them to create visually impressive programs with minimal complexity, while continuing to allow us to effectively teach fundamental computer science concepts.
A simple framework for interactive games in CS1
Authors: Luxton-Reilly Andrew , Denny Paul
Published: May 2009

Computer games are widely used in programming assignments to motivate students. Traditionally, these have been text-based games such as hangman, but as Java has become widespread, the use of graphics and graphical games has increased correspondingly. We report on a framework used as scaffolding to help students understand how to design and implement a variety of interactive games. We share our experiences using this framework for assignments over a number of years.
An information assurance curriculum for commanding officers using hands-on experiments
Authors: Brynielsson Joel
Published: May 2009

To authorize and initiate necessary investments and enforce appropriate policies and procedures, decision-makers need to have at least a fair understanding of computer security fundamentals. This paper presents the course design and the laboratory settings that have been developed for, and used within, the high rank officer curriculum at the Swedish National Defence College. The developed course looks at computer security from an attack versus defend viewpoint, meaning that computer attacks are studied to learn about prevention and self-defense. The paper discusses the pedagogical challenges related to education of high rank officers and similar personnel in light of recently-held courses and contrasts the course relative to similar undertakings. A standpoint taken is that computer security is best taught using hands-on laboratory experiments focusing on problem solving assignments. This is not undisputed since, e.g., high rank officers are busy people who are not fond of getting stuck learning about the peripherals.
Teaching database security and auditing
Authors: Yang Li
Published: May 2009

Hands-on laboratory experiences are essential critical for students to understand concepts and gain real-world insights in database security and auditing. We are developing a set of hands-on labs to integrate theories of database security into practices. Our designed labs do not require purchasing any commercial software or pre-configuration. Each lab includes objectives, results, and resources to help students to understand database security concepts including access control, virtual private database, and database auditing etc. We use two major database products (Microsoft SQL Server and Oracle 10g) to design and implement our labs.
Virtualized games for teaching about distributed systems
Authors: Wein Joel , Kourtchikov Kirill , Cheng Yan , Gutierez Ron , Khmelichek Roman , Topol Matthew , Sherman Chris
Published: May 2009

Complex distributed systems are increasingly important in modern computer science, yet many undergraduate curricula do not give students the opportunity to develop the skill sets necessary to grapple with the complexity of such systems. We have developed and integrated into an undergraduate elective course on parallel and distributed computing a teaching tool that may help students develop these skill sets. The tool uses virtualization to ease the burden of resourcing and configuring complex systems for student study, and creates varied "firefighting" gaming scenarios in which students compete to keep the system up and running in the presence of multiple issues. Preliminary experience indicates that (1) students find the tool engaging and (2) it is a manageable way in which to give students a novel perspective on interaction with complex distributed systems.
Preparation of high school computer science teachers
Authors: Gal-Ezer Judith , Hazzan Orit , Ragonis Noa
Published: May 2009

This special session examines frameworks for the preparation of high school computer science (CS) teachers from the Israeli perspective. Specifically, several Israeli CS teacher preparation programs and their components are presented. The presentation includes both a general overview and a detailed description of the actual implementation of such programs. This bipolar presentation, we suggest, provides practical guidelines with respect to CS teacher preparation, both for policy makers and for faculty members who wish to establish a CS teacher preparation program at their universities.
On the role and effectiveness of pop quizzes in CS1
Authors: Cicirello Vincent A.
Published: May 2009

In this paper, we explore the potential important role that unannounced (or "pop") quizzes can play in CS-1. "Pop" quizzes generate continual feedback to both the student and the instructor of the course. They also encourage students to avoid missing class unless necessary. We present the results of a three year study on the effectiveness of "pop" quizzes in CS-1. Our results demonstrate that students who experience "pop" quizzes in CS-1 score higher on exams than do their counterparts who did not experience "pop" quizzes. This appears especially true for upperclassmen, particularly for juniors. The use of "pop" quizzes in CS-1 also improves performance on programming assignments for juniors. CS/IS majors and Math majors both receive a greater benefit from "pop" quizzes than do other non-majors.
Academia-academia-industry collaborations on software engineering projects using local-remote teams
Authors: Rusu Adrian , Rusu Amalia , Docimo Rebecca , Santiago Confesor , Paglione Mike
Published: May 2009

It is widely recommended by both academia and industry that today's technology and software engineering students be well prepared for industry before graduation, especially given global outsourcing and other trends. Various methods have been developed to ensure student readiness, including co-ops and capstone courses. These approaches increasingly use real-world projects for their benefits to industry and often to the community at large. In this paper, we argue that students can be prepared to effectively join industry and keep the US technology workforce competitive through a curriculum that includes a theoretical software engineering course with real-world projects and the collaboration of paired teams across two or more universities. We present a case study of a successful teaching experience that features these aspects, and describe the outcome along with the unique perspective of a participating student.
Foss 101
Authors: Morelli Ralph , de Lanerolle Trishan
Published: May 2009

Can engaging students in free and open source software(FOSS) pique their interest in computer science? This paper describes an introductory computer science course that introduced students to using FOSS, to contributing to a humanitarian FOSS project, and to studying the broader impact of FOSS on our society. Students learned basic webprogramming skills (PHP/MySQL) and made small but significant contributions to a global FOSS project. Mistakes were made and opportunities were missed. But overall theexperiment was a success and the experience was enjoyable and educational for students and instructor alike. By building on what worked well, this course could serve as a model for incorporating study of FOSS into the introductory computing curriculum.
Experimental evaluation of an educational game for improved learning in introductory computing
Authors: Eagle Michael , Barnes Tiffany
Published: May 2009

We are developing games to increase student learning and attitudes in introductory CS courses.
Wu's Castle
is a game where students program changes in loops and arrays in an interactive, visual way. The game provides immediate feedback and helps students visualize code execution in a safe environment. We compared the game to a traditional programming assignment in an introductory CS course. In our study, half of the students were randomly selected to play the learning game first and half to write a program first. Our results show that students who play our learning game first outperform those who write a program before playing the game. Students in the game-first group felt they spent less time on the assignments, and all students preferred the learning game over the program. These results suggest that games like
Wu's Castle
can help prepare students to create deeper, more robust understanding of computing concepts while improving their perceptions of computing homework assignments.
Multi-site evaluation of SimSE
Authors: Navarro Emily , van der Hoek André
Published: May 2009

In this paper, we describe a multi-site evaluation of SimSE, an educational software engineering simulation game. This study was designed to build on our previous experience of evaluating SimSE in courses and controlled lab settings at UC Irvine, in order to validate our findings and discover any factors that come into play when SimSE is used in other institutions. The study consisted of three different universities using SimSE in their respective courses and reporting the results to us. The results confirmed several of our previous findings, as well as highlighted a number of critical considerations that must be taken into account when using SimSE in a course.
The future of the AP CS program
Authors: Tymann Paul T. , White Laurie
Published: May 2009

The objective of this special session is to provide an opportunity for computer science educators, at both the college and high school level, to provide input to the AP CS Development Committee as it refines the curriculum for the A course in light of the elimination of the AB exam. The input and active participation of educators attending this special session will help the members AP CS Development Committee to define a course and exam that continues to meet the high standards for teaching and learning required in the comparable college course.
Engagement
Authors: Morrison Briana B. , Preston Jon A.
Published: May 2009

This paper considers how gaming has been infused into the computing curriculum of institutions in the United States. To increase motivation of students and improve retention, many programs have begun using gaming in their introductory courses, as upper level electives, or as separate degree programs. The authors review the current use of gaming within curricula and analyze the content of game development degree programs. Finally, the authors describe plans at their institution to incorporate gaming throughout the computing curriculum and present initial results.