Conversations on building back better: Week 7 of TED2020

Week 7 of TED2020 featured conversations on where the coronavirus pandemic is heading, the case for reparations, how we can better connect with each other and how capitalism must change to build a more equitable society. Below, a recap of insights shared throughout the week.

Bill Gates discusses where the coronavirus pandemic is heading, in conversation with head of TED Chris Anderson at TED2020: Uncharted on June 29, 2020. (Photo courtesy of TED)

Bill Gates, technologist, philanthropist

Big idea: The coronavirus pandemic isn’t close to being over, but we’re making scientific progress to mitigate its impact.

How? Bill Gates talks best (and worst) case scenarios for the coronavirus pandemic in the months ahead. This fall could be quite bad in the United States, he admits, as there is speculation among researchers that COVID-19 may be seasonal and its force of infection will increase as the weather cools. But there’s also good progress on the innovation track, he says: the steroid dexamethasone was found to have benefits for critically ill patients, and monoclonal antibodies seem promising, as well. In short: we’ll have some additional support for the fall if things do indeed get worse. Gates also explains the challenges of reducing virus transmission (namely, the difficulty of identifying “superspreaders”); provides an update on promising vaccine candidates; offers his thoughts on reopening; takes a moment to address conspiracy theories circulating about himself; and issues a critical call to fellow philanthropists to ramp up their action, ambition and awareness to create a better world for all.

“When we think about the case for reparations, we are thinking about a case that is not exclusively centered on the harms and injustices and atrocities associated with slavery itself, but we have to view slavery as a crucible that created a subsequent array of atrocities that are associated with white supremacy in the United States,” says economist and author William “Sandy” Darity. He speaks with TED current affairs curator Whitney Pennington Rodgers at TED2020: Uncharted on June 30, 2020. (Photo courtesy of TED)

William “Sandy” Darity, economist, author

Big Idea: The time has come to seriously talk about reparations: direct financial payments to the descendants of slaves for hundreds of years of injustice.

How? A growing consciousness of America’s systemic white supremacy (built on mass incarceration, police violence, discrimination in markets and the immense wealth gap between black and white) has brought contemporary politics to a boil. How does the country dismantle the intertwined legacies of slavery and the unequal, trans-generational wealth distribution that has overwhelmingly benefitted whites? Reparations are not only a practical means to address the harm visited upon Black Americans by centuries of economic exclusion but also a chance for white America to acknowledge the damage that has been done — a crucial step to reconciliation and true equality. To truly redress the harm done to descendants of slavery, reparations must seek to eliminate the racial wealth gap. Darity believes that, for the first time since Reconstruction promised ex-slaves “40 acres and a mule,” reparations are entering the mainstream political discussion, and a once wildly speculative idea seems to lie within the realm of possibility. “It’s always an urgent time to adopt reparations,” Darity says. “It has been an urgent time for the 155 years since the end of American slavery, where no restitution has been provided. It’s time for the nation to pay the debt; it’s time for racial justice.”

Chloé Valdary shares the thinking behind the “theory of enchantment,” the process by which you delight someone with a concept, idea, personality or thing. She speaks with TED business curator Corey Hajim at TED2020: Uncharted on June 30, 2020. (Photo courtesy of TED)

Chloé Valdary, writer, entrepreneur

Big Idea: Pop culture can show us how to love ourselves and one another, the first step in creating systemic change.

How? Chloé Valdary developed the “theory of enchantment,” a social-emotional learning program that applies pop culture to teach people how to meet the hardships of life by developing tools for resilience, including learning to love oneself. This love for oneself, she believes, is foundational to loving others. Built on the idea of “enchantment” — the process by which you delight someone with a concept, idea, personality or thing — the program uses beloved characters like Disney’s Moana, lyrics from Kendrick Lamar and Beyoncé and even trusted brands like Nike to teach three principles: treat people like human beings not like political abstractions; never criticize to tear down a person down, only to uplift and empower; and root everything you do in love and compassion. The program aims to engender love and ultimately advance social change. “If you don’t understand the importance of loving yourself and loving others, you’re more prone to descend into rage and to map into madness and become that bad actor and to treat people unfairly, unkindly,” she says. “As a result that will, of course, contribute to a lot of the systemic injustice that we’re seeing today.”

“Hope is the oxygen of democracy and we, through inequality and the economic injustice, we see far too much of an America are literally asphyxiating hope,” says Darren Walker, president of the Ford Foundation. He speaks with head of TED Chris Anderson at TED2020: Uncharted on July 1st, 2020. (Photo courtesy of TED)

Darren Walker, president of the Ford Foundation

Big idea: We need to consider a new kind of philanthropy and capitalism rooted in accountability and equity.

Why? “The question for the wealthy, the privileged philanthropists is not ‘what do I do to give back’ but ‘what am I willing to give up?’” says Darren Walker, discussing how comfort and privilege are interlinked and how their relationship contributes to injustice. Walker explains that for true progress to be made, tax policies must be changed for wealthier citizens and entitlement cast aside. In a country full of exhaustion, grief and anger, Walker calls for nuance in handling complex ideas like defunding the police. “I believe there’s going to need to be a reckoning in corporate America that is aligned with the reckoning in the rest of America. That we have built into our mechanisms of promotion, of recognition and success, barriers,” says Walker. In order for change to be long-lasting, Walker believes we need to hold corporations accountable far beyond how long the media is talking about them and eliminate tokenism. “I believe that we no longer can wait for that ‘someday’, that this generation should not have to say ‘someday in the future, America will be America,’” Walker says, quoting Langston Hughes. “The time for America to be America is today.”

Quote of the talk: “Hope is the oxygen of democracy and we, through inequality and the economic injustice, we see far too much of an America are literally asphyxiating hope. Just as we saw the murder of George Floyd, the breath was taken out of his body by a man who was there to protect and promote. It’s a metaphor for what is happening in our society, where people who are Black and Brown, queer, marginalized are literally being asphyxiated by a system that does not recognize their humanity if we are to build back better, that must change.”

from TED Blog

Reducing the load: ways to support novice programmers

What’s your experience of learning to program? Have you given up and thought it just wasn’t for you? This has been the case for many people — and it’s the focus of a lot of research. Now that teaching programming is in the curriculum in many countries around the world, it’s even more important that we understand what we can do to make learning to program accessible and achievable for all students.

What is cognitive load for learners?

In education, one of the problems thought to cause students difficulty with learning anything — not just programming — is cognitive load. Cognitive load, a concept introduced in the 1980s by John Sweller, has received a lot of attention in the last few years. It is based on the idea that our working memory (the part of our memory that processes what we are currently doing) can only deal with a limited amount of information at any one time. For example, you can imagine that when you are just starting to learn to program, there is an awful lot going on in your working memory, and this can make the task of assimilating it all very challenging; selection, loops, arrays, and objects are all tricky concepts that you need to get to grips with. Cognitive load is a stress on a learner’s working memory, reducing their ability to process and learn new information.

Dr Briana Morrison (University of Nebraska-Omaha)

Finding ways of teaching programming that reduce cognitive load is really key for all of us engaged in computing education, so we were delighted to welcome Dr Briana Morrison (University of Nebraska-Omaha) as the speaker at our latest research seminar. Briana’s talk was titled ‘Using subgoal Labels to Reduce Cognitive Load in Introductory Programming’.

The thrust of Briana’s and her colleagues’ research is that, as educators, we can design instructional experiences around computer programming so that they minimise cognitive load. Using worked examples with subgoal labels is one approach that has been shown to help a lot with this. 

Subgoal labels help students memorise and generalise

Think back to the way you may have learned mathematics: in maths, worked examples are often used to demonstrate how to solve a problem step by step. The same can be done when teaching programming. For example, if we want to write a loop in Python, the teacher can show us a step-by-step approach using an example, and we can then apply this approach to our own task. Sounds reasonable, right?

What subgoal labels add is that, rather than just calling the steps of the worked example ‘Step 1’, ‘Step 2’, etc., the teacher uses memorable labels. For example, a subgoal label might be ‘define and initialise variables’. Such labels not only help us to remember, but more importantly, they help us to generalise the teacher’s example and grasp how to use it for many other applications.

Subgoal labels help students perform better

In her talk, Briana gave us examples of subgoal labels in use and explained how to write subgoal labels, as well as how to work with subject experts to find the best subgoal labels for a particular programming construct or area of teaching. She also shared with us some very impressive results from her team’s research examining the impact of this teaching approach. 

Screenshot of Dr Briana Morrison's research seminar talk

Briana and her colleagues have carried out robust studies comparing students who were taught using subgoals with students who weren’t. The study she discussed in the seminar involved 307 students; students in the group that learned with worked examples containing subgoal labels gave more complete answers to questions, and showed that they could understand the programming constructs at a higher level, than students who learned with worked examples that didn’t contain the subgoal labels. The study also found that the impact of subgoal labels was even more marked for students in at-risk groups (i.e. students at risk of performing badly or of dropping out).

It seems that this teaching approach works really well. The study’s participants were students in introductory computer science classes at university, so it would be interesting to see whether these results can be replicated at school level, where arguably cognitive load is even more of an issue.

Briana’s seminar was very well received, with attendees asking lots of questions about the details of the research and how it could be replicated. Her talk even included some audience participation, which got us all tapping our heads and rubbing our bellies!

Screenshot of Dr Briana Morrison's research seminar talk

Very helpfully, Briana shared a list of resources related to subgoal labels, which you can access via her talk slides on our seminars page.

You can also read more about the background and practical application of cognitive load theory and worked examples including subgoal labels in the Pedagogy Quick Read series we’re producing as part of our work in the National Centre of Computing Education.

Next up in our series

If you missed the seminar, you can find Briana’s presentation slides on our seminars page, where we’ll also soon upload a recording of her talk.

In our next seminar on Tuesday 14 July at 17:00–18:00 BST / 12:00–13:00 EDT / 9:00–10:00 PDT / 18:00–19:00 CEST, we’ll welcome Maria Zapata, Universidad Rey Juan Carlos, Madrid, who will be talking about computational thinking and how we can assess the computational thinking skills of very young children. To join the seminar, simply sign up with your name and email address and we’ll email you the link and instructions. If you attended Briana’s seminar, the link remains the same.

The post Reducing the load: ways to support novice programmers appeared first on Raspberry Pi.

Noticia Original

App note: PCB layout guidelines for high frequency signaling products

High speed board design app note from ON Semiconductor. Link here (PDF)

There is an increase of devices and circuitry in usage of high speed, low consumption, small volume and lower interference. Hence PCB design is an important stage of electronic product design. It forms a connection between function and electronic components, and is also an important part of power circuit design. High frequency circuit has the higher integration and the higher layout density, making it necessary to know how to make layout more reliable. The use of multilayer board becomes a necessity and an effective means to reduce cross interference of signals, better grounding and lower parasitic inductance.

This application note looks at the different layout types, practices and guidelines, types of material and factors influencing the high frequency signal transfers.

from Dangerous Prototypes

App note: Calculating and interpreting power dissipation for polypropylene film DC-link capacitors

Tech note from Vishay on polypropylene film capacitor value calculation with temperature and power dissipation consideration. Link here (PDF)

Film capacitors can deliver high power density due to their low ESR and high ripple current capabilities, and offer the highest ampere per μF ratio of capacitor technologies. This feature, combined with their high reliability and long lifespan, make the film DC-link capacitor a central component for power inverters in industrial and automotive applications.

from Dangerous Prototypes

New keyboards for Portugal, Norway, Sweden, and Denmark

It feels like just yesterday that we released the Raspberry Pi keyboard and hub to the world. Well, it turns out it’s been more than a year, and time really has flown for the next stage of this project, which brings four new language/country options: Portugal, Norway, Sweden, and Denmark. They’re available to buy now from Raspberry Pi Approved Resellers.

Raspberry Pi keyboards

The keyboard and hub has been a great success, with many users adopting our Raspberry Pi red and white colour scheme for their setup. As well as this satisfying uptake of the keyboard on its own, we’ve also sold tens of thousands of Raspberry Pi Desktop Kits which include a keyboard, alongside the official mouse, Beginners Guide and, of course, a Raspberry Pi.

Raspberry Pi official keyboard
If I say so myself, it’s quite a cool-looking desktop setup, with the boxes and cables all colour-coordinated.

We made the black and grey set up for users who own a black and grey Raspberry Pi case, but, with four out of five people choosing the red and white variant, it just goes to show what a bit of company branding can do for business!

We’ve found that the US keyboard is the most popular model, with over half our users choosing that option. As a Brit, I prefer the chunkier Enter key of the UK keyboard.

Close-up photo of UK keyboard Enter key
Easy to find

New variants

There is always a demand to support more users with keyboards to match their country and language so, as a second phase, we are announcing keyboards for the following countries:

  • Portugal
  • Norway
  • Sweden
  • Denmark
Photo: Raspberry Pi Portugal keyboard in red and white
The new European Portuguese variant of our keyboard and hub

These new keyboards are available now in red and white, with black and grey options coming soon. They are just print changes from previously released variants, but the devil proved to be in the detail.

For example, we hoped early on that the Portuguese keyboard would suit users in Brazil too, but we learned that Brazilian and European Portuguese keyboard layouts are quite different. Given the differences between UK and US keyboard layouts, this really shouldn’t have surprised us!

There is a very subtle difference between the Norway and Denmark keyboards. I wonder if anyone can spot it?


We also discovered that a Finnish keyboard layout exists, but I couldn’t identify any differences between it and the Sweden keyboard. While I don’t speak Finnish, I do speak Swedish – an awesome language that everyone should learn – so I came to these investigations with a bit of relevant knowledge. I found that there are very small changes between different manufacturers, but no consistent differences between Finnish and Swedish keyboards, and ultimately I was guided by what Raspberry Pi OS expects as the correct function for these keyboards. I do hope I am right about these two keyboards being the same… I expect I’ll soon find out in the comments!

Photo: Raspberry Pi Sweden keyboard in red and white
Our new Swedish keyboard. If you know of a way in which a Finnish keyboard should differ from this, please tell us in the comments

We know that many users are waiting for a Japan keyboard variant. We hardly ever talk about new products before they are released, but we’re breaking our rule, in this case, to let you know that we hope to have some news about this very soon – so watch this space!

I’d like to give special thanks to Sherman Liu of Gembird for the new key matrix design, and Craig Wightman of Kinneir Dufort for his patience in designing all the key print revisions.

Happy coding, folks!

The post New keyboards for Portugal, Norway, Sweden, and Denmark appeared first on Raspberry Pi.

Noticia Original

DIY MechBoard64

DIY MechBoard64 @

When the MechBoard64 was finally realized and presented on my blog, it soon came clear that a new mechanical keyboard was the missing piece in the creation of a brand new Commodore 64 (…well that and some new keycaps…). As I have no intention to become a Commodore 64 mechanical keyboard manufacturer, I’ve therefore decided to release all information regarding the creation of the MechBoard64 . This includes files for creating the keyboard PCB (Gerber, Excellon, BOM), the keyboard bracket (Illustrator, PDF, bend allowance drawing), 3D printed keycap adapters (.STL), the keyboard stabilizers (dimensions, material) and all miscellaneous parts (cables, screws, nuts, super lube). This way users can make their own keyboards, modify them to accommodate modern day keycaps, make groupbuys or start making batches for everyone to enjoy

from Dangerous Prototypes

Code Jetpac’s rocket building action | Wireframe #40

Pick up parts of a spaceship, fuel it up, and take off in Mark Vanstone’s Python and Pygame Zero rendition of a ZX Spectrum classic

The original Jetpac, in all its 8-bit ZX Spectrum glory

For ZX Spectrum owners, there was something special about waiting for a game to load, with the sound of zeros and ones screeching from the cassette tape player next to the computer. When the loading screen – an image of an astronaut and Ultimate Play the Game’s logo – appeared, you knew the wait was going to be worthwhile. Created by brothers Chris and Tim Stamper in 1983, Jetpac was one of the first hits for their studio, Ultimate Play the Game. The game features the hapless astronaut Jetman, who must build and fuel a rocket from the parts dotted around the screen, all the while avoiding or shooting swarms of deadly aliens.

This month’s code snippet will provide the mechanics of collecting the ship parts and fuel to get Jetman’s spaceship to take off.  We can use the in-built Pygame Zero Actor objects for all the screen elements and the Actor collision routines to deal with gravity and picking up items. To start, we need to initialise our Actors. We’ll need our Jetman, the ground, some platforms, the three parts of the rocket, some fire for the rocket engines, and a fuel container. The way each Actor behaves will be determined by a set of lists. We have a list for objects with gravity, objects that are drawn each frame, a list of platforms, a list of collision objects, and the list of items that can be picked up.

Jetman jumps inside the rocket and is away. Hurrah!

Our draw() function is straightforward as it loops through the list of items in the draw list and then has a couple of conditional elements being drawn after. The update() function is where all the action happens: we check for keyboard input to move Jetman around, apply gravity to all the items on the gravity list, check for collisions with the platform list, pick up the next item if Jetman is touching it, apply any thrust to Jetman, and move any items that Jetman is holding to move with him. When that’s all done, we can check if refuelling levels have reached the point where Jetman can enter the rocket and blast off.

If you look at the helper functions checkCollisions() and checkTouching(), you’ll see that they use different methods of collision detection, the first being checking for a collision with a specified point so we can detect collisions with the top or bottom of an actor, and the touching collision is a rectangle or bounding box collision, so that if the bounding box of two Actors intersect, a collision is registered. The other helper function applyGravity() makes everything on the gravity list fall downward until the base of the Actor hits something on the collide list.

So that’s about it: assemble a rocket, fill it with fuel, and lift off. The only thing that needs adding is a load of pesky aliens and a way to zap them with a laser gun.

Here’s Mark’s Jetpac code. To get it running on your system, you’ll need to install Pygame Zero. And to download the full code and assets, head here.

Get your copy of Wireframe issue 40

You can read more features like this one in Wireframe issue 40, available directly from Raspberry Pi Press — we deliver worldwide.

And if you’d like a handy digital version of the magazine, you can also download issue 40 for free in PDF format.

Make sure to follow Wireframe on Twitter and Facebook for updates and exclusive offers and giveaways. Subscribe on the Wireframe website to save up to 49% compared to newsstand pricing!

The post Code Jetpac’s rocket building action | Wireframe #40 appeared first on Raspberry Pi.

Noticia Original

OpenVX API for Raspberry Pi

Raspberry Pi is excited to bring the Khronos OpenVX 1.3 API to our line of single-board computers. Here’s Kiriti Nagesh Gowda, AMD‘s MTS Software Development Engineer, to tell you more.

OpenVX for computer vision

OpenVX™ is an open, royalty-free API standard for cross-platform acceleration of computer vision applications developed by The Khronos Group. The Khronos Group is an open industry consortium of more than 150 leading hardware and software companies creating advanced, royalty-free acceleration standards for 3D graphics, augmented and virtual reality, vision, and machine learning. Khronos standards include Vulkan®, OpenCL™, SYCL™, OpenVX™, NNEF™, and many others.

Now with added Raspberry Pi

The Khronos Group and Raspberry Pi have come together to work on an open-source implementation of OpenVX™ 1.3, which passes the conformance on Raspberry Pi. The open-source implementation passes the Vision, Enhanced Vision, & Neural Net conformance profiles specified in OpenVX 1.3 on Raspberry Pi.

Application developers may always freely use Khronos standards when they are available on the target system. To enable companies to test their products for conformance, Khronos has established an Adopters Program for each standard. This helps to ensure that Khronos standards are consistently implemented by multiple vendors to create a reliable platform for developers. Conformant products also enjoy protection from the Khronos IP Framework, ensuring that Khronos members will not assert their IP essential to the specification against the implementation.

OpenVX enables a performance and power-optimized computer vision processing, especially important in embedded and real-time use cases such as face, body, and gesture tracking, smart video surveillance, advanced driver assistance systems (ADAS), object and scene reconstruction, augmented reality, visual inspection, robotics, and more. The developers can take advantage of using this robust API in their application and know that the application is portable across all the conformant hardware.

Below, we will go over how to build and install the open-source OpenVX 1.3 library on Raspberry Pi 4 Model B. We will run the conformance for the Vision, Enhanced Vision, & Neural Net conformance profiles and create a simple computer vision application to get started with OpenVX on Raspberry Pi.

OpenVX 1.3 implementation for Raspberry Pi

The OpenVX 1.3 implementation is available on GitHub. To build and install the library, follow the instructions below.

Build OpenVX 1.3 on Raspberry Pi

Git clone the project with the recursive flag to get submodules:

git clone --recursive

Note: The API Documents and Conformance Test Suite are set as submodules in the sample implementation project.

Use the script to build and install OpenVX 1.3:

cd OpenVX-sample-impl/
python --os=Linux --venum --conf=Debug --conf_vision --enh_vision --conf_nn

Build and run the conformance:

export OPENVX_DIR=$(pwd)/install/Linux/x32/Debug
export VX_TEST_DATA_PATH=$(pwd)/cts/test_data/
mkdir build-cts
cd build-cts
cmake --build .
LD_LIBRARY_PATH=./lib ./bin/vx_test_conformance

Sample application

Use the open-source samples on GitHub to test the installation.

The post OpenVX API for Raspberry Pi appeared first on Raspberry Pi.

Noticia Original