software development

Thursday Extra: "Finding Performance Problems with ALEX"

On Thursday, October 11, Mattori Birnbaum, Linh Bui, Zoe Grubbs, Hadley Luker, and Xinya Yang will give a talk on their summer 2018 Mentored Advanced Project:

Identifying performance problems in code is crucial for software developers. Even small inefficiencies can incur large costs in complex, long-running systems. While programmers can tune their programs by using efficient algorithms and data structures, hardware resources such as caches and branch predictors can still be a major source of inefficiency. Such inefficient uses of hardware resources are rarely obvious in the program's source code.

During summer 2018, we developed a tool called AnaLysis of EXecution (ALEX) to help developers diagnose performance problems. ALEX gathers and displays performance data from unmodified programs run on GNU/Linux. Our visualization helps developers quickly find patterns of poor performance, and the accompanying analysis leads developers to the relevant source code. In our talk, we will demonstrate how ALEX can help developers, explain how it works, and discuss our summer research experience.

At 4:00 p.m., refreshments will be served in the Computer Science Commons. The talk, "Finding Performance Problems with ALEX," will begin at 4:15 p.m. in Noyce 3821. Everyone is welcome to attend!

CS Extra 10/8/18: Alumni Talk Careers

Thursday, October 4, 2018
4:15 p.m. in Science 2022 (note the room is different than usual)

Careers in Computer Science and Informal Talk by Grinnell CS Alumni
Cassie Koomjian '05, Ian Young '08, Terian Koscik '12, and Alex Leach '06 talk about their careers and experiences in the software design and development field.

CSC 322 Student Presentations

The CSC 322 ("Team Software Development for Community Organizations") students are wrapping up their multi-semester projects for release and will be presenting the near-final projects at 1:00-2:30pm on Friday, December 9, 2016, in Noyce 3819.

Computer Science Table: "Beyond efficiency"

At this week's Computer Science Table (at noon on Friday, December 6, in Rosenfield 224A), we will discuss issues, other than efficiency, that programmers should take into account when implementing algorithms. The reading is:

Computer Science Table is an open weekly meeting of Grinnell College community members (students, faculty, staff, etc.) interested in discussing topics related to computing and computer science.

Wednesday Extra: "Writing bug-free code using theorem provers"

On Wednesday, November 20, in Noyce 3821, Professor Aaron Stump of the University of Iowa will give a lunchtime talk on the use of program verification tools in software development:

Usually programmers try to ensure code quality by testing. In this talk, I will describe an emerging new approach to creating high-quality software, using theorem-proving tools. These tools allow you to write a program and then prove mathematically that the program satisfies some desired specification. Formalized mathematics is not easy, but once you have completed your proof, you are guaranteed beyond a shadow of a doubt that your code is bug-free, at least with respect to the specification you have formulated. I will demonstrate verified programming — and maybe a little computer-formalized mathematics — using the Agda theorem prover, and speculate about how these new technologies could impact the future.

Professor Stump's talk, “Writing bug-free code using theorem provers,” will begin at noon. Pizza and soda will be served.

Thursday Extra: "Software development using R6RS libraries"

On Thursday, February 2, John Stone will discuss the development of software in modern Scheme:

The Revised6 report on the algorithmic language Scheme introduces several new constructions into the language that enable programmers to impose a modular structure on their code, simplifying large-scale program development and promoting even greater flexibility in adapting the language to particular applications. This talk illustrates some of the possibilities, drawing on two examples: (0) a reimplementation in R6RS of the Smark programmable filter, and (1) an extensive algorithm library, created for the textbook Algorithms for functional programming.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, "Software development using R6RS libraries," will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!

Thursday Extra: "GCal"

At 4:15 on Thursday, December 9, in Noyce 3821, students from CSC 325 (Databases and Web application design) will present their class project, GCal:

GCal is an open calendar: Anyone on campus can view, add, and comment on events. In addition to demonstrating GCal, the students will discuss the technologies that are used in the calendar, the processes and problems involved in the project, and recommendations for others collaboratively building medium-scale Web applications.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, GCal: a community calendar for the rest of us, will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!

Thursday Extra: "Software for the submission and review of conference proposals"

At 4:15 on Thursday, September 30, in Noyce 3821, Professor Henry Walker will give a talk about software that he and his students have developed for the management of proposals for presenting research papers at conferences. In 1999, Mr. Walker was asked to develop the first iteration of a Web-based paper submissions and reviewing system. The current system represents the twelfth version of this software, and each version has implemented refinements, new capabilities, and adjustments. Reflections on the evolution of this system yield numerous lessons for software and Web-based systems. This talk discusses 10 (hexadecimal) observations that can help in the design of future software applications.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, Software for the submission and review of conference proposals: 10 (hexadecimal) lessons, will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!

Friday Extra: "Combinatorics, heuristic search, and software testing"

At noon on Friday, April 30, in Noyce 3821, Myra Cohen of the Department of Computer Science and Engineering at the University of Nebraska at Lincoln will speak on the role of combinatorics in the design of test suites for software:

Software systems today are magnitudes of order larger and more complex than their recent ancestors. Instead of building single systems, we now build families of systems. User interfaces are graphical and programs event-driven. The software/hardware interfaces we once kept distinct have become blurred. Developing reliable and affordable software presents an increasing number of challenges. As glitches in these large-scale systems continue to make newspaper headlines, developing reliable and affordable software presents an increasing number of challenges.

In this talk we examine advances in software testing that focus on the difficulty caused by one simple but ubiquitous concept -- system configurability. Configurable systems include software such as web browsers and office applications, families of products customized by businesses for different market segments, and systems that dynamically reconfigure themselves on the fly. We show how theory from combinatorial mathematics, combined with heuristic search algorithms, can help us to test these systems more efficiently and effectively.

Pizza and soda will be served shortly before noon. Professor Cohen's talk, Combinatorics, heuristic search, and software testing: Theory meets practice, will begin promptly thereafter. Everyone is welcome to attend!

Thursday Extra: "Graphical user interface development using the Qt toolkit"

On Thursday, September 17, Dennis Vaccaro 2011 will present a talk in the Department of Computer Science's Thursday Extras series, entitled Graphical user interface development using the Qt toolkit.

Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk will follow at 4:30 p.m. in Noyce 3821.

Syndicate content