Challenges and Ideas

Sponsored Challenges

This section lists challenges set by TADHack partners where you can win prizes for completing them.
[us_single_image image=”1217″ size=”medium”]

RINA Rumba - The Network Winter is Over ($1k prize)

Scope of the Challenge

The scope of the challenge is to show a working hack using one of the global sponsors’ technologies over a RINA network. All TADHacks must be built utilizing one or more of the SDK’s and API’s of the global sponsors, the winner(s) of the Arcfire RINA Rumba prize should be able to show that hack running over a RINA network.

Context of the Challenge

The Recursive InterNetwork Architecture (RINA) is a computer network architecture that unifies distributed computing and telecommunications. RINA’s fundamental principle is that computer networking is just Inter-Process Communication or IPC. RINA reconstructs the overall structure of the Internet, forming a model that comprises a single repeating layer, the DIF (Distributed IPC Facility), which is the minimal set of components required to allow distributed IPC between application processes. RINA inherently supports mobility, multi-homing and Quality of Service without the need for extra mechanisms, provides a secure and programmable environment, moti- vates for a more competitive marketplace, and allows for a seamless adoption.

For TADHack you should see RINA as an innovative way to provide networking services, going beyond the Internet’s flaws and giving the application developer an easy way to build a distributed application. We want the focus to be on the seamless way to write and deploy a distributed application with inherent mobility, QoS awareness, security and isolation.

Minimum Deliverable of the Challenge

The minimum deliverable is that a TADHack application works across 3 nodes connected through a RINA network.

So for example if your hack team decide to create something using the global sponsor Matrix resources, then in addition to win the RINA Rumba prize your hack must demonstrate that the application works across 3 nodes connected through a RINA network. For a hint on this, Matrix is python based, and uses an event-driven networking engine written in Python called Twisted. Your challenge would be to extend the Twisted framework with a RINA API Twisted module.

Support

The TADHack event is being supported remotely by the ARCFIRE team and they will be contactable over both weekends 23 – 24 September and 30 September – 1 October. The preferred mode of contact with the ARCFIRE RINA Stack team will be over on https://arcfire.slack.com

Assessment criteria and process

There will be a panel of 5 experts from the ARCFIRE project that will assess that the hack sub- mission is based on:

• Correct use of the RINA API to access network IPC services (minimum).

• Carrying out different deployments

  • Single deployment with 3 nodes.
  • Single deployment with 10 nodes
  • At least two independent parallel deployments using two independent tenant DIFs (each parallel deployment of 3 nodes).
  • At least two independent parallel deployments using two independent tenant DIFs (each parallel deployment of 10 nodes).
• Supporting application Mobility
  • It should be automatic but the developer should be able to demonstrate it working for their hack.

• Ability to request QoS parameters.

The panel will verify that each hack submission is conforming to the minimum criteria first (using the RINA stack for networking) and from there the more the hack supports, the more votes from the panel it will get and closer you or your team will be to winning the prize.

Prize Amount: $1k

The prize money will be given as cash.

Resources:

For a quick introduction to RINA have a look at some recent presentations, or for detailed infor- mation please visit http://pouzinsociety.org.

The RINA API documentation is available here https://github.com/IRATI/stack/wiki/Application-API. Some example applications are available here https://github.com/IRATI/stack/tree/master/rina-tools/src/rlite.

IRATI is an open source implementation of the RINA architecture targeted to the OS/Linux system, available at https://github.com/irati/stack. For more detailed information on the IRATI stack this README file and the following wiki pages provide information on using IRATI and understanding its design:

A public mailing list, is available here: http://www.freelists.org/list/irati. The list is to be used as a means for communication with the IRATI open source development community. The current implementation is mature enough to allow small/mid scale experimenta- tion (up to 50-70 systems, with each system having up to 10 IPC Processes instantiated), during relatively short periods of time (hours, up to a day depending on the experiment tested). We are working on improving the stability and robustness of IRATI in future releases.

There is a VM based (local) demo and testing tool for the IRATI stack called demonstrator and it can be found on github at https://github.com/IRATI/demonstrator. The demonstrator contains a command-line tool (gen.py) which allows the user to easily try and test the IRATI stack in a multi-node scenario. The purpose of the tool is to allow you to easily trial the IRATI stack, or to help developers to carry out integration and regression tests. No knowledge on how to compile and install IRATI is required. Everything the user need is self-contained in this repository and is explained in this document. Each node is emulated using a light Virtual Machine (VM), run under the control of the QEMU hypervisor. All the VMs are run locally without any risk for your PC, so you don’t need a dedicated machine or multiple physical machines. All you have to do is to prepare a configuration file which describes the scenario to be demonstrated. This requires the user to specify all the Layer 2 connections between the nodes and all the DIFs which lay over this L2 topology.

An alternative RINA implementation is available at https://github.com/vmaffione/rlite.

Hack Ideas

This section lists hack ideas people have sent in from all around the world. Its simply here to help stimulate ideas for hacks. We recommend you find a problem that matters to you, and build a solution to that problem using the global sponsors’ technologies. However, we hope these ideas help. Building hacks to these ideas does not increase your chances of winning a prize.

Pay to Talk with Me

Fed up with unsolicited and number withheld calls? This idea sends all those calls to a payment gateway. The caller pays a deposit, which the recipient refunds if the call is not time-wasting.

World Game

Design a game you can play with children around the world. It does not matter where they are, how old they are, what language they speak and how they can be reached via the internet. They should play right away with you, understand the rules of the game immediately. They learn more about your culture an dyou will learn more about their culture.

Learn Dutch

Design a game for children who as refugees came to the Netherlands, helping them to get acquainted with you and your friends, learn the Dutch language and culture so it’s easier for them to find their way and who knows, soon become your friends.

Better Places

In many countries, the only way to use the internet is to use the mobile phone, not the latest iPhone or Samsung, but just an old-fashioned Nokia. Slow internet, not even enough to watch Youtube videos on their phone which is anyhow is terribly expensive. However, the mobile phone is the only way for people in Africa, South America and South East Asia to connect with the world outside their village. To call the doctor in the big city or to go to school at a distance. The phone and social media are increasingly used to inform the world of abuses in a country, to call on people for demonstrations and to guarantee the proper course of elections. But how could you use the mobile phone in those countries to emphasize the nice things, let children know where to go to school, where to find clean water, or where it’s safe to play?

BOB-A-JOB

o you know those older people on the corner of the street? Those grandparents and grandmothers sitting in the park every day, feeding pigeons? Who on a hot day are weeding the flowerbeds in their garden? How would you get in contact with them to help? Doing shopping for those lovely old people in the street? Play a game of chess or checkers with those grandparents in the park? With your boyfriends getting rid of the weeds in the garden of the retirement home?

Voedselbank Nederland

About  the Voedselbank

In the Netherlands, more than a million people live below the poverty line. The Voedselbank (food bank) helps the poorest temporarily by providing them with food packages. To provide our customers with adequate food, we work with companies, institutions, governments and individuals. In this way, we will ensure that poverty will be limited, food surpluses disappear and the environment waste is reduced. With the motto: “Eye on food, heart for people”.

In order to increase the support to our customers, we work with local organizations that help our customers to become self supporting again. Food aid should always be temporary.

In 2016, with the help of 11.000 volunteers, 38.500 food packages were distributed from 166 local Voedselbanken each week. Approximately 135.000 Dutch people use food from the Voedselbank.

 

Organisation

Voedselbanken are organized regionally with 10 distribution centres spread over The Netherlands. Some 500 Voedselbanken exists locally from where food is directly distributed to the people.

Each local Voedselbank is an individual foundation with its own board of directors. The Voedselbank Netherlands is hierarchically positioned  above the many local Voedselbanken. The Voedselbank Netherlands has mainly an advisory and coordinating role without much influence or mandate.

 

Situation

Each distribution centre and Voedselbank The Netherlands has its own suppliers. Some suppliers offer such large batches of food that they are too bulky to deliver exclusively through the present distribution centres. This is due to limited storage or short shelf life (best before of). Redistribution over other distribution centres is necessary. For acceptance of the delivery, it must be clear in advance whether sufficient delivery can be provided to prevent a loss for that distribution centre.

In addition, the reallocation must also clarify how the (chilled) transport must be planned for redistribution. Of course, existing transport lines between the Voedselbanken are used, but this possibility is also strongly limited by  the short shelf life (best before of).

Each Voedselbank has its own and independent food supply and stock keeping system, which (unfortunately) does not communicate with systems of the other Voedselbanken. Thus, mutual communication is about telephone and e-mail, which, in terms of the problem statement, does not provide adequate support and rather increases the organisational chaos.

 

Problem statement

In brief, the Voedselbanken has a logistic and organizational problem to handle and distribute excess food and food with short lifespan offered by producers or chains of supermarket. De Voedselbank is looking for an efficient and effective way to distribute food among and between the distribution centres and the many local Voedselbanken.

 

Challenge and scope

Design a communication system used by the distribution centres and the local Voedselbanken for the administration of supply and demand of food with a short shelf life.

Scope will be:

  • Narrow to the food supply, total supplied quantity, which distribution centre is supplying and which local Voedselbank demands in what quantity,
  • The short shelf life of the food offered, which implies urgency,
  • interactive view of the supplies and demands of each offered food at any moment,
  • keep it simple (KISS), this means that you only develop the supply / demand part and not a full logistic, inventory and route planning system.

GO BUG YOURSELF / THE POLLINATORS

The Pollinators is a platform with focus on biodiversity and pollination. Without pollinators there would be no life. Our agricultural food production strongly depends on these pollinating species. However, the population of pollinators is decreasing.

Together with several other organisations and individuals, The Pollinators create a healthy environment for pollinating species and stimulate recovery of their ecosystem by:

  • Organizing events to sow flowers with high nutritional value for pollinators.
  • Creating awareness and supplying information how to help pollinators.
  • Support and combine new and existing initiatives.
  • Giving this serious topic the required attention as to reach a vast audience so initiating appropriate action will be easier.

 

Our challenge

We already communicate using different channels and co-operate with other initiatives. We would like to move on further and reach many more people so we can take bigger steps towards our goal.

 

Can an IT-solution support our goal?

Pollinating species cause fertilization of flowering plants by transferring male to female components. We are looking for a IT-solution that acts like a real pollinator. A solution that finds and connects different people and initiatives. How can this platform infect new people with seeds and anther dust to grow an flourish our community?

 

For presentation purposes you can use our cool corporate identity / design (copyright: The Odd Bunch). Just copy the foto’s and logo’s from our website https://www.thepollinators.org/

«Marketing guru» tool

A visual SMS chat builder for retailers where they can build scenarios for automated SMS dialogues with potential customers.  If-then logic triggers a specific dialogue branch based on customer’s input. The dialogue allows to refine customer’s preferences via a chain of question-answer SMS messages, and identify the most adequate contact person for this customer/request. The last action in the chain is automated phone call set up between the customer and the assigned contact person (both automatically receive an incoming call and get connected).

A simple example of how the dialogue may look like:

Guru: Welcome to Sweeties, the tailored bakery experience. Please answer a few questions to help us serve you best. Text 1 if ready.

Customer: 1

Guru: Great! What is that you want? Text 1 for cakes, 2 for biscuits, 3 for cookies

Customer: 1

Guru: Oh, delicious! Which flavor? Text 1 (chocolate), 2 (cheese), or 3 (vanilla)?

Customer: 2

Guru: Good choice! What about fillings? Chocolate (1), cream (2), or caramel (3)?

Customer: 3

Guru: Hold the line! Our seasoned cheesecake-with-caramel-filling expert is calling you right now for the last arrangements.

(Customer’s phone rings, they pick up)

Cheesecake-with-caramel-filling sales rep: Hey!