Daniel Garcia, Teaching Professor, University of California, Berkeley, U.S.A.
https://www.eecs.berkeley.edu/Faculty/Homepages/garcia.html
Title: Transforming High School Computer Science: The Beauty and Joy of Computing (BJC)
Daniel Garcia has presented this talk and workshops at the "TAPIA conference" (ACM) in 2014. Also, at SIGCSE he has run the workshop more than once. He also had appeared in a TED talk.
Abstract:
BJC was chosen as one of the initial pilots for a new, upcoming non-majors "Advanced Placement: Computer Science Principles" course to broaden participation in computing to traditionally underrepresented groups. The goal of the "CS10K" effort is to prepare 10,000 new high school CS teachers to teach the AP course by 2016. We were funded from the US National Science Foundation to provide summer workshops for 100 HS teachers nationwide, and 100
more in New York City. Both the College Board and code.org have featured and endorsed our curriculum.
This talk will introduce the AP CS Principles framework, our BJC course, the engaging, blocks-based Snap! development environment (based on Scratch), our year-long edX course, and some of the things we are doing to move the needle and bring fun, engaging, and powerful introductory computing ideas to the world.
Bio:
Dan Garcia is a Teaching Professor (aka Senior Lecturer with Security of Employment) in the Computer Science Division of the EECS Department at the University of California, Berkeley, and joined the faculty in the fall of 2000. Dan received his PhD and MS in Computer Science from UC Berkeley in 2000 and 1995, and dual BS degrees in Computer Science and Electrical Engineering from MIT in 1990. He was chosen as an ACM Distinguished Educator in 2012.
He is active participant in SIGCSE (having presented every year since 2001), and is currently working with the Ensemble computing portal and ICSI Teaching Privacy research projects. He serves on the ACM Education Board, the Advanced Placement Computer Science Principles Development Committee, is the faculty champion for the local CSTA chapter, and the faculty co-director for BFOIT, a wonderful Berkeley K-12 outreach effort.
He has taught (or co-taught) courses in teaching techniques, computer graphics, virtual reality, computer animation, self-paced programming as well as the lower-division introductory curriculum. He is currently mentoring over seventy undergraduates spread across four groups he founded in 2001 centered around his research, art and development interests in computer graphics, Macintosh OS X programming, computational game theory and computer science
education. He recently co-developed a computing course for all freshman engineers, as well as a full course renovation of the venerable introductory computing course for non-majors, "CS10: The Beauty and Joy of Computing (BJC)".
Rick Sutcliffe, Professor, Computing Science and Mathematics, Trinity University, Langley, BC, Canada
http://twu.ca/directory/faculty/richard-sutcliffe.html
Title: Closing the Cyber Barn Door Re-prioritizing Safety, Security, Reliability
Authors: Rick Sutcliffe and Benjamin Kowarsch
Abstract:
Past generations of software developers were well on the way to building a software engineering mindset/gestalt, preferring tools and techniques that majored on safety, security, reliability, and code re-usability. Computing education reflected these priorities and was, to a great extent organized around these themes, providing beginning software developers a basis for professional practice. In more recent times, economic and deadline pressures and the de-professionalism of practitioners have combined to drive a development agenda that retains little respect for quality considerations. As a result, we are now deep into a new and severe software crisis.
Scarcely a day passes without news of either a debilitating data or website hack, or the utter failure of a mega-software project. Vendors, individual developers, and possibly educators can therefore anticipate an equally destructive flood of malpractice litigation, for the argument that they systematically and recklessly ignored known best development practice of long standing is irrefutable. Yet we continue to instruct using methods and to employ development tools we know, or ought to know, are inherently insecure, unreliable, and unsafe, and that produce software of like ilk.
The authors call for a renewed professional and educational focus on software quality, majoring on redesigned tools that enable and encourage known best practice, combined with reformed educational practices that major on writing human readable, safe, secure, and reliable software. Practitioners can only deploy sound planning and management techniques, appropriate tool choice, and best practice development methodologies (factorization, modularity, safety, appropriate team and testing strategies) if those ideas and techniques are embedded in the curriculum from the beginning.
The authors have formally instantiated their ideas in the form of their dramatically re-visioned 1980s programming notation, Modula-2 R10, in the hope it will assist in reforming the CS curriculum around a best practices core so as to empower would-be professionals with the intellectual tools and practical mindset to begin resolving the software crisis.
They acknowledge there is no single software engineering silver bullet, but assert that professional techniques can be inculcated throughout a student's four-year university tenure, and if implemented in the workplace, these can greatly reduce the likelihood of multiplied IT failures at the hands of our graduates. While the authors illustrate some points with their new language, they maintain that disciplined development techniques can be employed even with some tools that do not actively encourage them.
Bio:
Rick Sutcliffe is Professor of Computing Science and Mathematics at Trinity Western University in Langley, BC, Canada, He is the author of textbooks, novels, papers and columns, and a frequent conference speaker. He has served on ISO programming language standards committees as representative of Canada's CSA and SCC for Modula-2, EBNF, ECMAScript, and VDM-SL, and was a co-author and editor of the Modula-2 standard and its supplements. He currently resides in Bradner, BC, Canada.
Benjamin Kowarsch is a project management consultant in the telecommunications industry where he has delivered products and services that must operate unattended with perfect security and reliability over millions of activations for long periods of time. With a long standing career in project management and a background in engineering, he holds that software engineering has become an oxymoron and has worked for many years to bring project management best practises and classical engineering principles to the software development and delivery process. In his youth he briefly served on the ISO committee for Modula-2. In his spare time he enjoys playing the violin, baking traditional sourdough bread and handcrafting a perfect cappuccino. He resides periodically in Zurich, Switzerland and Tokyo, Japan.
Together, they have developed from Niklaus Wirth's Modula-2 a new dialect called R10 that brings programming language design into the twenty-first century with a powerful focus on safety, security, reliability, and code re-usability. See the repository at https://bitbucket.org/trijezdci/m2r10/ and the website at http://www.modula-2.info for further detail.