
The global impact of climate change and the need for drastic action become clearer every day. The far-reaching and devastating effects of climate change are in front of everybody’s eyes. The most pressing global issues of our time can be addressed by deploying new ideas in combination with good old-fashioned competence.
Everybody can make a difference, but for developers there’s a special challenge – a chance to prove themselves at a global level while building and enriching skills. IBM has been part of the Call for Code Global Challenge for a long time–2021 marks the fourth year of their support for the initiative.
Many of the changes that make the most difference will be found in the form of ideas coded in software. “Real code helping real people” is one of the key mottos used to promote this approach. Call for Code actively supports the best solutions to bring technology to communities in need, in partnership with the Linux Foundation and the United Nations.
The Call for Code community includes over 400,000 developers, data scientists, and problem solvers from 179 nations. Contributors from around the world have created more than 15,000 apps for humanitarian issues.
The most challenging scenarios for the Earth and her people are laid out in the list of seventeen Sustainable Development Goals compiled by the United Nations. The IBM Call for Code Global Challenge 2021 and its three tracks (Zero-Hunger, Clean Water, and Production) is described in this article.
A full year of competition
The Call for Code schedule is a full year of dates and events that allow ingenious developers and creative minds to expand their scope to the global level. CFC 2021 Key Dates in 2021 include the Challenge opening on March 22nd, World Water Day.
Submissions Close on July 31st, and Finalists are announced on October 5th. The final official step, the announcement of the Winner, will take place on November 16th at the Global Award Celebration.
Judges
The European finalists will be judged by a European team of judges, including: Prof. Tuula Tuhkanen, University of Jyvaskylä, Department of Biology and Environment Science; Marc Peters, Distinguished Engineer and CTO Energy, Environment & Utilities Europe, IBM; James Robey, Global Head of Environmental Sustainability, Capgemini; and Timo Wielink, Head of Product Development Project OWL, a previous winner.
Timo’s experience provides the best possible testimonial to the step-up that the IBM Global Challenge can offer to ingenious minds. The inspiring story behind his prize-winning ‘Project Owl’ can be read in a previous article.
Bente’s Heroes, a Regional winner
Call for Code’s Regional Winner Europe is TheHeroLoop, a responsive Web3.0 web app that uses AI to match volunteers – called Heroes, with citizens in need – called Loopers. Everyone can be a hero, and every “looper” can create a hero by repeating requests for help.
Citizens anonymously login, using a Hiro wallet, and are rewarded in various ways for doing good deeds. The app is a place to be matched with others with the same interests—somewhere you can contribute to your community’s health and well-being, and help our world reach the UN’s SDG goals for 2030.
The team received $10K and solution deployment support from IBM Dev Advocates to make their solution available to everyone.
Bente Acking, Founder of The Hero Loop, helps to clarify what the Call For Code Global Challenge means in practice. “If you have an idea, don’t let anything stop you!”, suggests Bente, demonstrating her strong commitment to success.
“I had just won a hackathon on Covid and the use of AI, so I decided to join CFC”, Bente explains, confirming one of the scouting patterns that often leads to participation in the challenge. “I knew Slack very well from having worked with it for a long time”.
Communication skills are essential to effective team building, a task that Bente has really mastered. “I was indeed surprised by the variety of people and skills I found this time. In particular, I was looking for two skills, one designer and one data scientist, and I found them in a short time”.
The Hero Loop is about connecting volunteers around the world with local people in need, securely, and without tracking any personal data.
A safe and secure encrypted blockchain authentication ensures privacy is protected, so everybody is anonymous in TheHeroLoop. TheHeroLoop matches individuals in need (Loopers) with volunteers (Heroes) based on their location within a 20 kilometer radius, and can be used worldwide.
The app provides Loopers with the option to ask for a specific task to be done and allows them to specify a certain time.
“We are inclusive”, the website proudly states; “if you don’t have Internet, or don’t like to use it, it’s possible to call a number with your button phone to get help within your zip-code area”.
Bente had an idea but didn’t have the resources or expertise to build the app by herself, though she knew how to cope with this. Bente’s conclusion is that anyone with an idea that fits the competition theme can join the community and work with others to build a team, submit an entry, and continue developing the project.
One important part of participating in world-class challenges is connecting with the organization—preparation of paperwork, submission preparation and all the other necessary steps. “It took time to submit, describing everything with the asked detail, but it was a great time. Jury member panel and all IBM people in general were amazing.”
Inspiring stories from other participants are always moving. It seems like a sense of wonder catches hold of everyone who enters this Challenge. “I myself experienced a sense of wonder getting inside CFC”, the inventor of The Hero Loop tells us. “C4C is a totally different experience from any other hackathon-like event I have ever seen.
People from Ghana, Congo, India… different areas, different mindsets: participating in C4C was like starting a trip. Everything is stretched out in CFC. We got to know each other.”
That depth of knowing each other allows the community to grow fast. The Hero Loop grew based on more than thirty people spending their free time on the project. “I now raised money myself through taking on a consultant role to pay our people, totalling 100,000$”, confesses Bente, underlining what a determined developer can achieve.
The final steps of The Hero Loop’s Project were always going to be the most important. The staff is giving the silverware its final polish, i.e., finishing the testing, in September. Three pilots have been discussed to start with: in the Swedish city of Helsingborg, in Nairobi, capital city of Kenya, and in New York City. “It’s all about helping people, allowing communities to grow, and making the world a better place.”
Technically speaking, the team makes use of a wide range of the best pieces of open-source software available today. The key services used in their solution are:
- IBM Watson Tone Analyzer
- IBM Watson Personality Insights
- IBM Watson Assistant
- Red Hat OpenShift on IBM Cloud
- EventStreams on IBM Cloud
OpenShift in particular is one of the most interesting technologies used in developing the Hero Loop solution.
A few examples of code can give us a sense of how powerful Openshift is. Let’s take a look at a couple of snippets—creating a project and creating a new app.
Creating a project
$ oc new-project development testing production
To create an application in development project:
$ oc project development
Creating a new app
Here are two ways to create a new app:
Method One, from source code
$ oc new-app https://github.com/sclorg/nodejs-ex -l name=heroloop-server
Note: The -l flag will apply a label of “name=heroloop-server” to all the resources created by new-app
Method Two, from a template:
1. Clone the demo app source code from GitHub repo
$ git clone https://github.com/sclorg/nodejs-ex
Three files will appear in the openshift/template directory:
nodejs-ex
openshift
templates
nodejs.json
nodejs-mongodb.json
nodejs-mongodb-persistent.json
package.json
README.md
server.js
tests
app_test.js
views
index.html
2. The new app can now be created from the nodejs.json template by using the -f flag and pointing the tool at a path to the template file:
$ oc new-app -f /path/to/nodejs.json
Check the status of nodejs app with the command:
$ oc status
To start the app build:
$ oc start-build nodejs-ex –follow
To check the pods up/running:
$ oc get pods
The following pods can now be seen:
NAME CLUSTER-IP EXTERNAL-IP PORT(S) SELECTOR AGE
nodejs-ex 172.30.249.251 <none> 8080/TCP deploymentconfig=nodejs-ex,name=myapp 17m
To deploy the app:
$ oc get svc
To Create the secret:
$ oc create secret generic app-token \
–from-literal=username=theheroloop \ (user’s git –username)
–from-literal=password=*************** \ (user’s git password)
–from-file=.gitconfig=.gitconfig \
–from-file=client.crt=/var/run/secrets/openshift.io/source/client.crt \
–from-file=cacert.crt=/var/run/secrets/openshift.io/source/cacert.crt \
–from-file=client.key=/var/run/secrets/openshift.io/source/client.key
Conclusions
The IBM Call for Code Global Challenge is the ideal competition for aspiring project leaders. The competition’s advocates search the world for promising candidates and put them in contact with IBM’s experts and technologies to start developing world-wide solutions.
Keep your eyes peeled for upcoming challenges, and congratulations to Bente Acking, Regional Winner 2021, on TheHeroLoop!