As we have seen in the news lately, the pandemic situation of Covid-19 is growing worse everyday. The mortality rate of this virus, based on the data from WHO and business insider (https://www.businessinsider.de/international/most-us-coronavirus-deaths-ages-65-older-cdc-report-2020-3/?r=US&IR=T) is mostly higher on the Elderly with pre-existing medical conditions or slightly weaker immune system. There are many Elderly, who live alone under some circumstances and are in need of groceries and provisions, in order to get through this hard time without living their houses and raising the chance of being infected. Others have children, who are afraid for the lives of their young ones, as they keep working from home, in order not to lose their job.To contain this very disease and reduce death rate, the best approach, would be to minimize the outside activities including grocery shopping, especially for the mention groups. As a society, we need to help each other to overcome this challenge. By crowdsourcing or a call to help in a form of a web application, in cases of grocery shopping for the elderly, people with medical conditions and newborn children, we could reduce the mortality rate, while avoiding unnecessary outside visits. The younger people from the neighborhood or the same house could aid the mentioned groups in their shopping tasks.
What it does
The people in need of help could enter the website and type in their address. Based on the location, a matched candidate would be selected automatically, who can help the concerned citizen in their shopping task. The citizen will be assigned a shopping cart, which will be provided by the candidate from the neighborhood and brought to the citizen's house. As this is merely a prototype, any money transaction, will be done by the two parties themselves, when the shopping is fulfilled.
How we built it
At the beginning, we started off by defining the core functionalities corresponding with the desired use cases. From there two teams were formed, based on the main two components in this prototype. Additionally Considering the experience of the team members, the technologies were decided. We utilized the Spring framework on our backend, to generate and publish an Rest API. In Figure (API Overview) there is a general overview of our backend endpoints. After testing out the endpoints, using the Heroku cloud platform, the API was deployed automatically after any change in the Github repository. The web interface was built on Angular as seen in Figure (Web application). The web application calls out the endpoints on the API, which fulfills the mentioned use cases in the prototype.
Challenges we ran into
The communication was not always easy, while the network connection was not always in our favor. Of course the lack of presence aspect of this hackathon, was a challenge of its own, while communication channels are limited and implementing concepts such as code review or pair programming would be hard to overcome.
Accomplishments that we're proud of
We are overwhelmed by the fact, that we built this project in a short time, with high quality code. The Engagement of team members in these tough times was an absolute win. As all of us are coming from the agile software world, it was amazing to push ourselves to the limit, keeping a tight schedule, and finally implement, test and deploy two core components in this hackathlon.
What we learned
We had a lot of fun, working in this hackathlon over the weekend. We learned to work efficiently in a group. while following agile guidlines. We also handled user management without the need to sign up for an account.
What's next for Crowdsourced shopping-aid "Einkaufr"
Next steps on this project, would be to add maps and a mobile client to connect even more people on a daily basis. Additionally the backend should be packed on a more scalable server to support more users.