Mark C. Lewis
Trinity University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Mark C. Lewis.
technical symposium on computer science education | 2006
Mark C. Lewis; Berna L. Massingill
This paper discusses a project that has been used to teach CS2 for six semesters at Trinity University. The project spans the full semester, and all eight of the assignments students turn in are part of the project. For this project, the students develop a 2-D game using a framework written by one of the authors. The framework is intended to allow students to produce some results early in the semester before they have significant knowledge without constraining them or doing too much for them. It was originally written for Java 1.3 and has evolved for Java 1.4 and now Java 5. We discuss the details of this project, the benefits it provides, and our experience with it.
technical symposium on computer science education | 2015
Lisa L. Lacher; Mark C. Lewis
The use of online videos and flipped classrooms is a natural fit for many CS courses, especially in the introductory sequence, and the use of these techniques is growing. However, the benefits of these techniques depend heavily on student preparation before class meetings. This paper presents tests of the effectiveness of basic multiple choice quizzes as gateway checks in a flipped classroom by looking at the impact they have on student grades. Programming aptitude and learning approaches were considered as additional factors. Ignoring aptitude and learning approaches, statistical analysis of the student grades did not support our hypothesis that the gate-check video quizzes would be beneficial. Nor did it support our hypothesis that the benefit of quizzes would be greatest for students who had lower aptitudes entering the class. However, there was some evidence that it might have helped raise the grades of students who have a propensity toward surface learning.
The Astronomical Journal | 2013
Kevin Baillie; Joshua E. Colwell; Larry W. Esposito; Mark C. Lewis
Stellar occultations observed by the Cassini Ultraviolet Imaging Spectrograph reveal the presence of transparent holes a few meters to a few tens of meters in radial extent in otherwise optically thick regions of the C ring and the Cassini Division. We attribute the holes to gravitational disturbances generated by a population of {approx}10 m boulders in the rings that is intermediate in size between the background ring particle size distribution and the previously observed {approx}100 m propeller moonlets in the A ring. The size distribution of these boulders is described by a shallower power-law than the one that describes the ring particle size distribution. The number and size distribution of these boulders could be explained by limited accretion processes deep within Saturns Roche zone.
technical symposium on computer science education | 2016
Mark C. Lewis; Douglas S. Blank; Kim B. Bruce; Peter-Michael Osera
Most courses of study in computer science begin with students learning to think algorithmically, and to express the solutions to problems using a programming language. The choice of which programming language is usually considered secondary to the choice of concepts, but the reality is that the vehicle we choose for teaching concepts shapes the way that students understand those concepts, and enables or inhibits the learning of certain concepts. Most departments use one of a small number of mainstream languages that are well-established in industry and are backed by teaching and learning resources. A minority of departments choose to work with non-mainstream languages, finding that the advantages of those languages outweigh the disadvantages. What issues should we consider when choosing a programming language for our introductory courses? A. Use in the “real world”. A department may be pressured to use a language that is prevalent in local industry, local feeder schools, or standardized tests. For example, local companies might like students to be prepared for internships by being taught in whatever language they use for production. Unfortunately, “real world” languages often come with complex features, that, while useful on large industrial projects, make them unsuitable for students, particularly beginning students, and have a tendency to become
international conference on information technology: new generations | 2012
Kerry A. Seitz; Mark C. Lewis
We present a description of a virtual machine and byte code that have been designed around the goal of optimized execution on highly variable, heterogeneous hardware, instead of having goals such as small byte codes as was the objective of the Java Virtual Machine. The approach used here is to combine elements of the Dalvik virtual machine with concepts from the Open CL heterogeneous computing platform, along with an annotation system so that the results of complex compile time analysis can be available to the Just-In-Time compiler. We provide a flexible annotation format so that the set of annotations can be expanded as the field of heterogeneous computing continues to grow.
technical symposium on computer science education | 2018
Lisa L. Lacher; Albert Xin Jiang; Yu Zhang; Mark C. Lewis
In an effort to improve student performance in a flipped classroom environment, this paper explores the impact of including auto-graded coding questions in gate check quizzes associated with videos for a flipped CS1 course. Previous work showed that having students complete multiple choice questions that were intended to verify that they had done the preparation work did not have a statistically significant impact on outcomes as measured through written quizzes and exams. In an attempt to engage higher-level processing of learned information, this work builds on top of that by adding questions that require students to write short segments of code for most of the quizzes in addition to doing some multiple choice questions. We found that students who were given these coding video quizzes performed better on written assessments, especially for the final exam.
Archive | 2018
Alexander Hansen; Mark C. Lewis
In the interest of minimizing bandwidth usage, a modified Huffman code structure is proposed, with an accompanying algorithm, to achieve excellent lossless compression ratios while maintaining a quick compression and decompression process. This is important as the usage of internet bandwidth increases greatly with each passing year, and other existing compression models are either too slow, or not efficient enough. We then implement this data structure and algorithm using English text compression as the data and discuss its application to other data types. We conclude that if this algorithm were to be adopted by browsers and web servers, bandwidth usage could be reduced significantly, resulting in cut costs and a faster internet.
technical symposium on computer science education | 2014
Mark C. Lewis; Konstantin Läufer; George K. Thiruvathukal
Scala is one of a new breed of hybrid languages with both object-oriented and functional aspects. It happens to be the most successful of these languages coming in at #12 on the Red Monk language ranking and leading all languages in their 2nd tier. This workshop will introduce participants to the Scala programming language, how it can be used effectively in introductory CS courses, and the parallel tools that are available for it. We begin with simple examples in the REPL and scripting environment, then look at doing larger, object-oriented projects. We finish off with an exploration of composable futures and the Akka actor library. Participants are strongly recommended to bring a laptop.
technical symposium on computer science education | 2013
Mark C. Lewis; Konstantin Läufer; George K. Thiruvathukal
Various hybrid-paradigm languages, designed to balance compile-time error detection, conciseness, and performance, have emerged. Scala, e.g., is interoperable with Java and has become an early leader in adoption, especially in the start-up and open-source spaces. Workshop participants experience Scalas value as a teaching language in the CS curriculum through four lecture-lab modules: In CS1, the read-eval-print loop and simple, uniform syntax aid programming in the small. In CS2, higher-order methods allow concise, efficient manipulation of collections. Advanced topics include domain-specific languages, concurrency, web apps/services, and mobile apps. Laptop recommended with Scala installed.
technical symposium on computer science education | 2013
Barbara M. Anthony; Lisa Bender; Christine Chung; Mark C. Lewis
Enrollments in CS have been climbing dramatically in recent years at large schools, especially those in the top-tier for CS. This type of growth is part of the normal cycle for CS and is expected anytime that the public perceives that the job market for computing related fields is strong. It is unclear how much of this growth is currently seen on other campuses. The purpose of this BoF session is to discuss what educators at smaller campuses, and particularly liberal arts schools, are currently seeing in regards to enrollment in CS. This information could be of particular interest for those at schools considering cutting programs for economic reasons or those adjusting the number of faculty lines.