-A A +A

Feed aggregator

Hurricanes: Stronger, slower, wetter in the future?

News From NSF - Mon, 05/21/2018 - 10:00

Find related stories on NSF's geosciences risk and resilience interest area.

Scientists have developed a detailed analysis of how 22 recent hurricanes would be different if they formed under the conditions predicted for the late 21st century.

While each storm's transformation would be unique, on balance, the hurricanes would become a little stronger, a little slower-moving, and a ...
More at https://www.nsf.gov/news/news_summ.jsp?cntn_id=245396&WT.mc_id=USNSF_51&WT.mc_ev=click


This is an NSF News item.

Computer science education is far bigger than maker education: A post in lieu of a talk #InfyXRoads

ComputingEd - Mon, 05/21/2018 - 07:00

I was scheduled to speak this Thursday in the final plenary panel of the Infosys Foundations USA CrossRoads 2018 conference (see program here). My father passed away on May 10, and we just had the funeral Friday May 18, so I apologized and cancelled the trip. I had already thought about what I wanted to say, so here’s a blog post in lieu of a panel presentation.

The session is “Why Teach CS? Why Teach Making?” with Yasmin Kafai, Quincy Brown, and Colleen Lewis. The session was inspired in part by my blog post listing the reasons for teaching programming, and was framed in our preliminary discussions as a debate. Is there a difference between CS education and Maker education? Yasmin was tasked with making the argument that they are pretty much the same. I disagree with that position. Colleen was moderating, and Quincy was still keeping her cards close to her chest — I don’t know what position she’s going to take Thursday.

If our goal is to teach the basics of programming, sure, maker education (where we teach students to make physical devices with embedded computation, such as e-textiles, robotics, or Lego Mindstorms devices) and the kind of computing education that I see reflected in the K-12 CS Framework is pretty much the same. There’s some CS education in there. Students learn the basics of sequential execution, conditionals, and looping. But that’s not the same as computer science education.

If our goal is to change students attitudes towards technology, then sure, maker education may be even more effective than computing education for getting students to see the technology in their world. By making their own technology, students may increase their self-efficacy, and help them to feel that they can and should have control over the technology in their lives. But again, that’s not the same as teaching students computer science.

The big ideas of computer science are much bigger than maker education. Here are three examples.

The questions that Alan Turing was trying to answer when he invented the Turing Machine were “What is computable? What are the limits of mathematics? What is not computable? Is even human intelligence computable?” These are as meta as you can get. This is the heart of computer science, as the science of abstraction. These aren’t ideas students currently explore in maker education. Maybe they could, but certainly don’t require a maker context.

One of the most powerful ideas associated with Turing Machines is that any computer can simulate any other computer, including being many other computers with many processes. That’s the big idea that Alan Perlis was talking about in 1961 when he talked about computer science as the study of process. That’s one of the big ideas behind object-oriented programming as Alan Kay defined it.  We don’t explore simulation in maker education, and it’s hard to imagine how we might.

 

Ada Lovelace was the world’s first computer programmer. More than that, she was the first to realize that computers were about programming anything. Quoting from her Wikipedia page:

Ada saw something that Babbage in some sense failed to see. In Babbage’s world his engines were bound by number…What Lovelace saw—what Ada Byron saw—was that number could represent entities other than quantity. So once you had a machine for manipulating numbers, if those numbers represented other things, letters, musical notes, then the machine could manipulate symbols of which number was one instance, according to rules. It is this fundamental transition from a machine which is a number cruncher to a machine for manipulating symbols according to rules that is the fundamental transition from calculation to computation—to general-purpose computation—and looking back from the present high ground of modern computing, if we are looking and sifting history for that transition, then that transition was made explicitly by Ada in that 1843 paper.

Maker education isn’t about general computation. It’s about computing associated with sensors and actuators. Computer science education is about computing everything, from numbers to letters to musical notes. Having to connect the computation to a device made by the student limits the space of what you might compute. Computer science is about representation and abstractions on representations. Everything can be defined in terms of bits. That’s a big idea.  You can probably teach that concept in maker education, but it can be taught (and more easily) without tying it to maker education.

Most of us know Grace Hopper’s name today, but probably more for her iconic status and as the namesake for the Grace Hopper Conference than for what she actually did. Admiral Grace Hopper led the effort to create compiled programming languages, including (eventually) COBOL. There are so many big ideas in here, but let’s just take two.

  • Automatic programming means that you have a program specified in one language (like COBOL or Java or Scratch) and you use that as input to a program that generates another language written in another language (used to be machine language, but JavaScript is probably more common today). A compiler is a program that inputs a program and generates another a program. That is a powerful, meta idea that students do not typically see in maker education. Could we teach about compilers in maker education?  Maybe, but “making” is certainly not the easiest and most obvious way to talk about compilers — it’s another way computing education is bigger than maker education.
  • COBOL was about making programming accessible by using words and concepts familiar to the end users. (It was also about designing a compiled language that would work on any underlying computer, which connects back to Turing’s machine.) Designing for others who are not you and have different expertise than you is one of the most fundamental ideas of human-computer interface design today. Do we get to that in maker education? That big idea occurs more often in non-maker contexts, e.g., making apps for others and using user-centered design to get there.

Bottomline: CS education is so much bigger than maker education. You can explore a lot of computer science using student-made devices as a context. Ben Shapiro has shown that he can have kids playing with powerful modern-day computing ideas from networking to machine learning, all using student-made devices. That’s serious CS education. But it’s not all of CS education, and you can do CS education apart from student-made devices. Maker and CS education are not one-to-one.

There is an equity component here. We often talk about Ada Lovelace and Grace Hopper when we talk about the women who were part of the creation of computer science. We do them a disservice if we only remember them as early members of a category “women in computing.” It’s important to recognize what they actually did, what they contributed to computer science — and we should teach that. What Lovelace and Hopper did mattered, and we demonstrate that it mattered by teaching it and explaining why it’s important.  Ideas like data representation and compilers are not today taught in maker education, are not easily taught in maker education, and can certainly be taught without maker education.

The big ideas that Turing, Lovelace, and Hopper created and explored are not new. This shouldn’t be the realm of advanced CS any more.  An important goal of computer science education should be to teach these foundational ideas of computer science.  I don’t think we know how to get there yet, but that should be our goal. We should be teaching the computer science developed by the people we hold up as heroes, leaders, and role models.

We can teach a lot with maker education, but let’s make sure that we don’t miss out on what CS education is about. Maker education is a great idea. It’s a terrific context for learning some of CS. If we only focus on the intersection of maker and CS education, we might miss the other, far bigger ideas that are in computer science.

Helping stroke survivors walk as normally as possible

News From NSF - Mon, 05/21/2018 - 00:00

Research team focuses on “locomotor learning” for lasting rehabilitation
Full story at https://www.nsf.gov/news/special_reports/science_nation/rehabrobotics.jsp?WT.mc_id=USNSF_51


This is an NSF News item.

View and vote on more than 200 science and engineering videos

News From NSF - Fri, 05/18/2018 - 17:04

More than 29,143 people from 142 countries have already viewed, voted or commented on their favorite videos in the week-long, National Science Foundation (NSF)-funded 2018 STEM for All Video Showcase, and there's still time to participate.

The STEM for All showcase is an annual online event that features three-minute video presentations from federally funded projects aimed at improving science, technology, engineering, mathematics (STEM) and computer science education.

Until ...
More at https://www.nsf.gov/news/news_summ.jsp?cntn_id=245508&WT.mc_id=USNSF_51&WT.mc_ev=click


This is an NSF News item.

Frequently Asked Questions (FAQs) for NSF 18-540, NSF/VMware Partnership on Edge Computing Data Infrastructure (ECDI)

News From NSF - Fri, 05/18/2018 - 14:26

Available Formats:
HTML: https://www.nsf.gov/pubs/2018/nsf18077/nsf18077.jsp?WT.mc_id=USNSF_25&WT.mc_ev=click
PDF: https://www.nsf.gov/pubs/2018/nsf18077/nsf18077.pdf?WT.mc_id=USNSF_25&WT.mc_ev=click

Document Number: nsf18077
Public Comment: These Frequently Asked Questions (FAQs) are related to Program Solicitation NSF 18-540.


This is an NSF Program Announcements and Information item.

Frequently Asked Questions (FAQs) for NSF 18-540, NSF/VMware Partnership on Edge Computing Data Infrastructure (ECDI)

News From NSF - Fri, 05/18/2018 - 14:26

Available Formats:
HTML: https://www.nsf.gov/pubs/2018/nsf18077/nsf18077.jsp?WT.mc_id=USNSF_179
PDF: https://www.nsf.gov/pubs/2018/nsf18077/nsf18077.pdf?WT.mc_id=USNSF_179

Document Number: nsf18077
Public Comment: These Frequently Asked Questions (FAQs) are related to Program Solicitation NSF 18-540.


This is an NSF Publications item.

Division of Chemistry Newsletter, Spring 2018

News From NSF - Fri, 05/18/2018 - 12:12

Available Formats:
PDF: https://www.nsf.gov/pubs/2018/nsf18074/nsf18074.pdf?WT.mc_id=USNSF_179

Document Number: nsf18074


This is an NSF Publications item.

Is there a “hype cycle” for educational programming languages?

ComputingEd - Fri, 05/18/2018 - 07:00

As a longtime Smalltalk-er, I loved this piece: “The 50-year Gartner Hype Cycle for Smalltalk

Interesting how the hype cycle applies to Smalltalk:

  • Technology Trigger — the hype began with the famous 1981 BYTE cover and continued throughout the 1980s.
  • Peak of Inflated Expectations — in the 1990s, Smalltalk became the biggest OOP language after C++ and even IBM chose it as the centrepiece of their VisualAge enterprise initiative to replace COBOL.
  • Trough of Disillusionment — Java derailed Smalltalk by being: 1) free; and 2) Internet-ready. Free Squeak (1996) and Seaside web framework (2002) were not enough to save it.
  • Slope of Enlightenment — Pharo was released in 2008 and became the future of Smalltalk, thanks to its remarkable pace of evolution. We are still in this phase, which requires continuing and sustained advocacy.
  • Plateau of Productivity — we are waiting for this phase, perhaps in the next decade. I am sanguine.

Educational programming languages (or maybe just programming languages’ use in education) don’t seem to follow this curve at all.  Does a programming language ever “come back” once it has left classrooms?  Logo? Pascal?  Even if there’s a “Trough of Disillusionment” (e.g., when we realized just how hard C++ and Java are), we still see longterm use. Even if we later realize how good something was (e.g., Logo for integration into curriculum), it doesn’t come back.

I wonder what the similar curve looks like for programming languages in education.

Community College Cyber Pilot Program

News From NSF - Wed, 05/16/2018 - 17:22

Available Formats:
HTML: https://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505573&WT.mc_id=USNSF_25&WT.mc_ev=click
Document Number: PD 18-1668


This is an NSF Program Announcements and Information item.

Electrochemical Systems

News From NSF - Tue, 05/15/2018 - 23:38

Available Formats:
HTML: https://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505558&WT.mc_id=USNSF_25&WT.mc_ev=click
Document Number: PD 18-7644


This is an NSF Program Announcements and Information item.

Biosensing

News From NSF - Tue, 05/15/2018 - 23:38

Available Formats:
HTML: https://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505556&WT.mc_id=USNSF_25&WT.mc_ev=click
Document Number: PD 18-7909


This is an NSF Program Announcements and Information item.

Biological and Environmental Interactions of Nanoscale Materials

News From NSF - Tue, 05/15/2018 - 23:38

Available Formats:
HTML: https://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505553&WT.mc_id=USNSF_25&WT.mc_ev=click
Document Number: PD 19-1179


This is an NSF Program Announcements and Information item.

Environmental Engineering

News From NSF - Tue, 05/15/2018 - 23:38

Available Formats:
HTML: https://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505551&WT.mc_id=USNSF_25&WT.mc_ev=click
Document Number: PD 18-1440


This is an NSF Program Announcements and Information item.

Environmental Sustainability

News From NSF - Tue, 05/15/2018 - 23:38

Available Formats:
HTML: https://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505549&WT.mc_id=USNSF_25&WT.mc_ev=click
Document Number: PD 18-7643


This is an NSF Program Announcements and Information item.

Engineering of Biomedical Systems

News From NSF - Tue, 05/15/2018 - 23:38

Available Formats:
HTML: https://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505546&WT.mc_id=USNSF_25&WT.mc_ev=click
Document Number: PD 18-5345


This is an NSF Program Announcements and Information item.

Pages

Subscribe to Computing Portal aggregator