Copper Country Coders (CCCoders) is an organization that introduces local students in middle and high school to the world of computer science and programming. Michigan Tech undergraduate and graduate computer science students volunteer as instructors and mentors under the guidance of Computer Science faculty members Leo Ureel and Charles Wallace.
Last year, volunteers Marissa Walther and Shaun Flynn focused on teaching students how to develop in Java and create games using JavaFX. What began as a class assignment for CS 4099 Directed Study in Computer Science Education developed into a book based off of the CCCoders curriculum. The book, “A World of Java Programming” has since been published and is now available on Amazon.
About the authors: Marissa is a third year Computer Science major who participates in the Husky Game Development Enterprise. She is a member of CCCoders, the Huskies Pep Band and the Superior Wind Symphony. Marissa is also a Computer Science Learning Center Coach and the office assistant for the Engineering Fundamentals Department. Shaun is a third year Computer Engineering major. He is a project manager for Blue Marble Security Enterprise and vice president of Eta Kappa Nu (HKN). On the weekends, Shaun teaches a middle school programing class through CCCoders with Marissa. He also works as a lab assistant for CS 1121 Introduction to Programming.
BestValueSchools, a website that evaluates colleges and universities for the return on investment that their education offers, has ranked Michigan Tech’s computer science program 14th among the top 30 computer science programs in the country.
The rankings took into account program demand, computational aptitude of students, research and development, and the return on investment based on salary reports by Payscale.com.
Describing Michigan Tech’s computer science program, BestValueSchools said
If you’re interested in gaming, take a close look at Michigan Tech’s concentration in Game Development. You’ll get plenty of hands-on experience at this accredited computer science school as you learn to design and develop cutting-edge interactive games. A team-based approach leaves you well-prepared for a collaborative work environment after graduation, and some of the skills you learn can transfer to other fields besides gaming (virtual reality, for example). Michigan Tech also runs a few notable master’s degree programs, including a popular MS in the fast-growing field of cybersecurity. This degree even includes three subspecialties, so you can further refine your studies.
- MTU White, region rank 12
Anthony Marcich, 4th year Math major
Nick Olinger, 3rd year Math major
Jay Honnold, 4th year CS major
- MTU Red, region rank 13
Justin Evankovich, 4th year EE major
Nicolas Muggio, 4th year Software Engineering major
Antony Duda, 4th year CE major
- MTU Purple, region rank 16
Michael Lay, 3rd year Software Engineering major
Marcus Stojcevich, 3rd year CS major
Parker Russcher, 3rd year CS major
Two other teams, MTU Orange – Evan de Jesus, Paul Wrubel, Dylan Gaines and MTU – Black – Isaac Smith, Austin Walhof, Ryan Philipps, finished in the top 50 teams of the region.
Congratulations to all participants in this year’s event.
He will present a lecture titled “Algorithmic Crowdsourcing and Applications in Big Data.” Refreshments will be served. Wu is director of Center for Networked Computing (CNC) and Laura H. Carnell Professor at Temple University. He served as the associate vice provost for International Affairs and chair in the Department of Computer and Information Sciences at Temple University.
Prior to joining Temple University, he was a program director at the National Science Foundation and was a distinguished professor at Florida Atlantic University. A full bio and abstract can be found online.
The Computer Science Learning Center Open House
The CS Learning Center is hosting an Open House Friday, September 15th from 4-5pm. Stop by to see the new space and meet the coaches at our new location in Rekhi 118.
Light refreshments will be served. All are welcome.
The new CS Learning Center has more windows for natural lighting, bean bags and comfy chairs for informal help sessions, and all computers are equipped with dual monitors. With our new space comes the addition of more blended learning technologies; including a Mersive system that enables coaches and students to project the screens of their wireless devices to a 50-inch monitor, and a Promethean digital whiteboard allowing coaches and students to receive email images of the 70-inch screen after a tutoring session. The new equipment in the CS Learning Center was provided by the CTL/IT Distance Learning Grant Program with additional support from the CS Department. A special thanks goes to Dr. Robert Pastel for generously offering to move his lab, so the CS Learning Center could have a larger, more suitable space.
Tim Havens (ECE/CS) and Tony Pinar (ECE) presented several papers at the IEEE International Conference on Fuzzy Systems in Naples, Italy. Havens also chaired a session on Innovations in Fuzzy Inference.
Havens and Pinar also attend the Invited Workshop on the Future of Fuzzy Sets and Systems in Rothley, UK. This event invited leading researchers from around the globe for a two-day workshop to discuss future directions and strategies, in particular, to cybersecurity. The event was hosted by the University of Nottingham, UK, and sponsored by the National Cyber Security Centre, part of UK’s GCHQ.
Michigan Technological University is inviting K-12 teachers and administrators to a workshop in August, to help them find ways to bring computer science and programming into their classrooms. The workshop, supported through a Google CS4HS (Computer Science for High Schools) grant, exposes teachers to exciting new ways to bring computer science into schools.
This is the third year Google has supported a computer science workshop at Michigan Tech for teachers.
“As computer technology becomes an ever more powerful and pervasive factor in our world, students need instruction in the creative problem-solving skills that are the basis of computer science,” explains Linda Ott, professor of computer science at Michigan Tech and director of the workshop. “Software design and programming skills, along with an understanding of the principles of computer systems and applications, are tremendously valuable in a wide range of future careers, and the problem-solving process of computational thinking can be used to enrich a wide range of K-12 courses. New tools and teaching materials make it possible to bring the creative spirit of computing into K-12 classrooms.”
“From a teacher’s perspective, however, bringing computer science into the classroom can seem intimidating,” Ott goes on to say. “We want to help teachers develop confidence in their own computer science literacy and help them craft a computing curriculum that meets their teaching missions.”
The workshop will cover a basic understanding of computer science principles, help teachers integrate programming into new and existing courses, disseminate K-12 computer programing course materials developed at Michigan Tech and provide tools for increasing interest in computing among young women.
Participants will receive lunches, a stipend to help with travel and other expenses and a year of assistance in course development from a Michigan Tech computer science graduate student. Out-of-town teachers will receive free accommodation at the Magnuson Franklin Square Inn.
Visit the article in Tech Today http://www.mtu.edu/ttoday/ by J. Donovan for a link on how to apply.
It was August 15, 2003. A software bug invoked a blackout spanning the Northeast, Midwest, and parts of Canada. Subways shut down. Hospital patients suffered in stifling heat. And police evacuated people trapped in elevators.
What should have been a manageable, local blackout cascaded into widespread distress on the electric grid. A lack of alarm left operators unaware of the need to re-distribute power after overloaded transmission lines hit unpruned foliage, which triggered a race condition in the control software.*
Ali Ebnenasir is working to prevent another Northeast Blackout. He’s creating and testing new design methods for more dependable software in the presence of unanticipated environmental and internal faults. “What software does or doesn’t do is critical,” Ebnenasir explains. “Think about medical devices controlled by software. Patient lives are at stake when there’s a software malfunction.”
How do you make distributed software more dependable? In the case of a single machine—like a smartphone—it’s easy. Just hit reset. But for a network, there is no centralized reset. “Our challenge is to design distributed software systems that automatically recover from unanticipated events,” Ebnenasir says.
The problem—and some solutions—has been around for nearly 40 years, but no uniform theory for designing self-stabilizing systems exists. “Now we’re equipping software engineers with tools and methods to design systems that autonomously recover.”
Ebnenasir’s work has been funded by the National Science Foundation.
The Ubiquituous High-Performance Computing Project, funded by the Defense Advanced Research Projects Agency (DARPA), initiates research on energy-efficient, resilient, and many-core computing on the horizon for 2018. Faced with the end of Dennard scaling, it was imperative to provide better hardware and software to face energy consumption of future computers, but also to exploit a large number of cores in a single cabinet (up to 1015 floating-point operations per second), all the while consuming no more than 50kW. A thousand of those machines have the potential to reach one exaflop (1015 floating-point operations per second). The hardware should expose several “knobs” to the software, to allow applications to gracefully adapt to a very dynamic environment, and expand and/or contract parallelism depending on various constraints such as maximal authorized power envelope, desired energy-efficiency, and required minimal performance.
Following UHPC, the Department of Energy-funded X-Stack Software Research project recentered the objectives. By using traditional high-performance communication libraries such as the Message-Passing Interface (MPI), by revolutionizing both hardware and software at the compute-node level.
In both cases, it was deemed unlikely that traditional programming and execution models would be able to deal with novel hardware. Taking advantage of the parallelism offered by the target straw-man hardware platform would be impossible without new system software components.
The Codelet Model was then implemented in various runtime systems, and inspired the Intel-led X-Stack project to define the Open Community Runtime (OCR). The Codelet Model was used on various architectures, from the IBM Cyclops-64 general-purpose many-core processor, to regular x86 compute nodes, as well as the Intel straw-man architecture, Traleika Glacier. Depending on the implementations, codelet-based runtime systems run on shared-memory or distributed systems. They showed their potential on both classical scientific workloads based on linear algebra, and more recent (and irregular) ones such as graph-related parallel breadth-first search. To achieve good results, hierarchical parallelism and specific task-scheduling strategies were needed.
Self-awareness is a combination of introspection and adaptation mechanisms. Introspection is used to determine the health of the system, while adaptation changes parameters of the system so parts of the compute node consume less energy, shutdown processing units, etc. Introspection and adaptation are driven by high-level goals expressed by the user, related to power and energy consumption, performance, and resilience.
The team studied how to perform fine-grain resource management to achieve self-awareness using codelets, and built a self-aware simulation tool to evaluate the benefits of various adaptive strategies.
The TERAFLUX Project
The TERAFLUX project was funded by the European Union. It targeted so-called “teradevices,” devices featuring more than 1,000 cores on a single chip, but with an architecture that will make it near-impossible to exploit using traditional programming and execution models. DF-Threads, a novel execution model based on dataflow principles was proposed to exploit such devices. A simulation infrastructure was used to demonstrate the potential of such a solution, while remaining programmable. At the same time, it was important to maintain a certain level of compatibility with existing systems and features expected by application programmers.
Both models borrow from dataflow models of computation, but they each feature subtle differences requiring special care to bridge them. Stéphane Zuckerman and his colleagues ported DARTS—their implementation of the Codelet Model—to the TERAFLUX simulator, and showed a convergence path existed between DF-Thread and codelet-execution models. The research demonstrated the advantages of hardware-based, software-controlled multithreading with hardware scheduling units for scalability and performance.
Stéphane Zuckerman presented the results and outcomes of his research in peer-reviewed conferences and workshops.