Computer Science and Software Engineering Pilot Program – So Far Presenters • Kevin Clevenger • Blue Springs High School • Current PLTW courses available at this school • Elementary - Pilot • Middle School – GTT • High School – BM, IED, POE, DE, EDD • CSE • CSE Classes • 2 sections of 40 students (35 male and 5 female students) • 17 years teaching – 9 years teaching AP Computer Science Presenters • Mary Howard • Kearney • Current PLTW Courses available at this school • • • • Middle School – GTT (All 6th – DM, all 7th EE & GA) Junior High – GTT (8th elective – AR) High School – Engr track: IED, POE & CSE High School – Biomed track: PBS, HBS • CSE Classes • 1 sections of 24 students (19 male and 5 female students) • 22 years in Information Technology before teaching Presenters • Vern Larson • Smithville High School • Current PLTW courses available at this school • Middle School – GTT AR and DM • High school – IED, POE, DE, EDD • And CSE • CSE class • 1 section of 10 male students • Retired from IBM What we are going to cover • What is Computer Science • Why should I study Computer Science • What is the PLTW CSE course about? • Our experiences so far • Questions and hopefully answers What is Computer Science? • Study of what we do with information • How we gather it • How we mine data we want from it • How computers can mine data from enormous amounts of data • How the Internet has changed societies world-wide • Study of algorithms and abstractions • Algorithms ≈ what you can teach a computer • Which functions (I-O) can be efficiently computed? • How can we work with generalities and make something work • Study of problem solving • How do we write instructions to solve similar problems rather than how do we solve this one problem • Study of how the hardware works • Study of how the software works • Study of how the software and hardware work together Keyboarding is NOT Computer Science It would be similar to say driver’s training is an automotive science course Why should I study Computer Science? Or why should we be teaching it in a high school class? It teaches and strengthens problem solving skills. • Problem Solving is a major part of the class • Vinamrata Singal Computer science student at Stanford • Six Reasons Why Studying Computer Science Is Worth It • Problem Solving - 3. Suddenly, everything needs to be decomposed. My problem solving skills have become immensely better after becoming a computer science major. In fact, now everything I think of as a problem. Running late this morning? I break the problem down: what is going to take the most time, and how can I effectively cut corners to avoid wasting time? My parents often rely on me to fix anything technologically related (television, phones, you name it). I approach every issue as a software problem: what could be wrong? Look for the symptoms of the problem, see where it shows up. Understand the system, what could be causing it. And then usually, I can get the solution. It is becoming as essential to succeed as any of the core subjects • It has become a basic skill needed in all sciences, and most careers • Department of Computer Science University of Freiburg • Our modern world would be inconceivable without computer science. From engineering to business management, medicine to biology, and language processing through to psychology, sociology and archaeology – all the sciences today need computer science for the evaluation of their data. At the same time the science of processing information by means of computer programs provides the basis for the internet and mobile telephony, for airlines and financial transactions, for DVD players, televisions and cars that work – in short: for a functioning world. This creates a strong practical relevance, which is exactly what makes the subject so exciting and is opening up ever more employment opportunities or computer scientists. Computer Science, therefore, is a forward-looking discipline that offers excellent prospects for graduates. Half of STEM job openings are for computer specialists 2.8 million STEM openings 0.5 million engineers 1.4 million CS Reproduced in PCAST Report to the President, Engage to Excel: Producing One Million Additional College Graduates with Degrees in STEM, Feb 2012, p.78. Ok, but I am not going to be a computer geek • Art • Graphic Design • Web Design • Photography • Automotive • Diagnostics • Control and monitoring of engines – and now sensing and braking • Manufacturing • CNC • Automated manufacturing • Security • Facial recognition • Information from cameras and sensors • Tracking using RFID chips in shoes, and other garments I asked my students if they knew of any career in which computers, computing, or programming was not involved This is the look I got before they started laughing There is a need for computer literacy and knowledge. Idaho Board Of Education Approves STEM Rules. • The Idaho Press Tribune Share to FacebookShare to Twitter (11/4) reported the Idaho Board of Education has approved a proposal from the Idaho Department of Education to expand enrollment in STEM classes. Under the proposal, high school students would be able to take “dual-credit courses in engineering and computer science and Advanced Placement computer science classes to satisfy math or science graduation requirements.” Currently, these courses are as electives. The proposal must be approved by the Legislature. Lawmakers propose increasing math, science credits to graduate • (11/5) As Wisconsin schools prepare their students and teachers for more rigorous coursework, lawmakers have introduced legislation that also would increase the number of math and science classes high school students must take before they graduate. Under the proposal, school districts could choose to accept up to one credit of computer science to count as a math credit and could elect to accept agricultural sciences courses as science credits. What is the PLTW CSE course about? CSE is a concepts course. • Computer Science and Software Engineering (CSE) Course Description • Computer Science and Software Engineering (CSE) is year-long specialization course within PLTW’s Pathway to Engineering. It is projectand problem-based, with students working in teams to develop computational thinking and solve open-ended, practical problems that occur in the real world. The course covers the College Board’s new CS Principles framework. The course is not aiming to develop programming expertise in one particular programming language; it aims instead to develop computational thinking, to generate excitement about the field of computing, and to introduce a variety of computational tools that foster creativity. The course also aims to build students’ awareness of the tremendous demand for computer specialists and for professionals in all fields who have computational skills. Each unit focuses on one or more computationally intensive career paths. • Students practice problem solving with structured activities and progress to open-ended projects and problems that require them to develop planning, documentation, and communication skills. Problems aim for ground-level entry with no ceiling, so that all students can successfully engage the problems but students with greater motivation, ability, or background knowledge will be challenged to work further. Units of Study • Unit 1 Algorithms, Graphics, and Graphical User Interfaces • Unit 2 The Web • Programs used – Scratch, App Inventor, Python, and Tkinter • • • • Impact on the user HTML5, PHP Databases, and SQL Data driven design Security • Unit 3 Discovery in Data and App Invention • Unit 4 Predicting, Understanding, and Communicating with Simulation • Biology and Computation • Visualizing Data • Discovering Knowledge in Data • Cloud Sourcing with Mobile Computing • Predicting, understanding, and communicating with Simulations Some of the Software in Use Scratch • FileZilla – Text Editing and FTP • • Version 1.4 http://info.scratch.mit.edu/Scratch_1.4_Download Python- Enthought Basic Canopy distribution • • This includes many libraries, including SciPy, NumPy, MatPlotLib, Python Image Lib, Qt4, iPython, etc. http://www.enthought.com/products HxD – Hex Editor and Disk Editor (raw data) http://www.mozilla.org/en-US/firefox/new/ JD Firefox • Firebug Firefox Add-on • http://getfirebug.com/ NetLogo –Environment Modeler • http://ccl.northwestern.edu/netlogo/download.shtml GitHub -Software Collaboration Tool • http://windows.github.com/ Oracle Virtual Box “VM” software • https://filezilla-project.org/ Schools might choose another environment for text editing and FTP if used in other existing CS courses. NetBeans for example, would replace Notepad++ and FileZilla. http://download.virtualbox.org/virtualbox/4.2.12/VirtualBox4.2.12-84980-Win.exe • http://mh-nexus.de/en/hxd/ • http://java.decompiler.free.fr/?q=jdgui MEGA - Molecular Evolutionary Genetics Analysis • http://www.megasoftware.net/ Notepad++ • http://notepad-plus-plus.org/ App Inventor Blocks Editor • http://dl.google.com/dl/appinventor/installers/windows/appi nventor_setup_installer_v_1_2.exe App Inventor Companion • https://play.google.com/store/apps/details?id=edu.mit.appin ventor.aicompanion2 The pilot process -progress report, feedback surveys, videoconferences, curriculum updates, reports PLTW’s next step “open pilot” College Board • Trying to get everything done so they can have what they need for designating what is an AP Computer Science course. • Goal is to be ready by 2016 • Audit 2015 • Currently working on Computer Science Principles (CSP) • http://cs10kcommunity.org/ Our Experiences – so far We have gotten this far Larson • With Scratch for their project • Created • old Pong game • combination of asteroids and Alien Attack • Lessons covered Algorithms, Abstractions, reiteration, conditionals, • With App Inventor for their project • Creating • an A-B day calculator • Basketball Statistics App • Magic 8 Ball • Lessons covered Agile Design Process, Boolean, binary, octal, hex, database, libraries We have gotten this far Clevenger • With Scratch for their projects • Created • Pong • Stick figure dodging game • Lessons covered Algorithms, Abstractions, iteration, conditionals, Agile Design Process • With App Inventor for their Project • Created • Magic 8 Ball • Math Flash Cards • Music app • Lessons covered Agile Design Process, Boolean, Binary • First Stages of Python We have gotten this far Howard • With Scratch for their projects • Created • Zombie, maze games • Lessons covered algorithms, abstractions, iteration, conditionals, Agile Design Process • With App Inventor for their Project • Created • Quiz app appropriate for one of their classes • Lessons covered Agile Design Process, Boolean, Binary • First Stages of Python Questions?