The Economist published an article, "Meet Market: How the Internet Changed Dating" talking about the lack of diversity existing within that market. Our team noticed that few social apps that actively promotes a diverse environment. Gaming apps on our phones, news articles, Instagram feeds and relentless notification alerts isolate us from the world we live in. Some applications have come out to attempt and connect people, but many, like MeetUp, fail to consider everyone.
Instead of promoting more screen-time, we also wanted to promote local collaboration for projects. We believe that everyone shares experiences and can contribute to either the adventures or the solving division and isolating in local communities. This is an application for everyone.
What it does
We wanted to build an inclusive app that allowed unique features which allows people to either meet to race, do activities, or build a project together. For example, a host can create an event for people to conduct a race where participants will collect coins as they race and gain discount codes for local businesses. Or a host can find out if there are local people who can have unique problem-solving capabilities, where as their experience can bring new light to the existing problems.
There are QR codes along the race path or at the event where the participants can scan. The QR code can give follow on coordinates, can create a puzzle to be solved, or both. This application also offers the ability to chat with the people that participated as well as promote local business. Recruiters can use this app to find possible candidates by hosting events where the QR codes can require technical questions to be solved in a different environment.
How we built it
We built it with React-Native using java script, style-script and HTML with a VS code IDE. We used React-Native to conduct most of the front-end development. We utilized Google Maps API as well as Google Cloud Platforms. We hosted our application using Google Firebase server products. Logos, icons, and graphics were made on Adobe Illustrator.
Challenges we ran into
Coming up with a realistic plan that allowed us to tackle the problem within 24 hours. Loading React-Native and Android Studios for the non-mac computer proved to be difficult. Some of the methods of loading react-native was deprecated so there were a few incomplete packages. Reconciling java with react-native also created problems as one installation iteration of react-native run-android showed errors of java -version not existing within the registry. The java was not communicating with the Android SDK.
The source of many of the QR creation derived from trying to utilized Android Studios to create the QR. Building the QR proved to be tough as changing the functions for the QR codes required different scripts. The integration of the QR to trigger the object and API for it to populate within the respective device.
Another challenge was creating the chat room. Originally, we intended to use R to create the chat room. As we attempted to create the chat room and utilize R Shiny we quickly realized that it required a local host. The devtools::install github("Kohze/fireData") came back with errors dealing with the package. While looking at the readme within repository there were some files that were not actively updated.
Setting and mapping within the app proved to be another challenge. Attempting to set certain objects would sometimes generate errors. We did not find an efficient method on mapping colors within the app. Mapping the coins in conjunction with the Google Maps API generated errors.
Creating a standardized time unit proved to be time intensive. Factoring the days, hours, and minutes and converting it strictly to seconds to facilitate the function of the timer really consumed a good amount of time. The countdown timer to count down to a specific date proved to be a hard to build.
Vectorized operations was very challenging to implement in java scripts. Using the package react-native Easy Grids was not easy. Every time we tried to create different rows that fell under the same header the character or numeric was not populating in the correct spot.
In the end research, research, research… We never gave up only sought to find the answers.
Accomplishments that we're proud of
- Kanban agile was a tool that we used to help us streamline our production process.
- Creating the application within the 24 hour period that was functional.
- Having majority of the group learn java script within that 24 hour period and creating parts that was incorporated with the app was equally impressive.
- Each member of the team provided a different approach with their experience.
- We all managed to understand a small part of the app and the overall logic involved within that app.
- Creating a versatile application that answered today's challenges which can change the world made the group really proud.
- We executed our vision together without any conflict and developed a life-long relationship along the way.
What we learned
- Forecasting production timelines to incorporate workshops that team members can attend.
- Running react-native with Android Studios and reconciling the missing SDK.
- There are always better ways to optimize the code for the application development.
- Creating templates would have really streamlined the process.
- There are certain tools good for certain problems and trying to reconcile languages was an interesting process.
- Packages being loaded into our base code that allowed the different languages to interact with each other.
- The ability to quickly learn a language which served as a puzzle piece for the puzzle.
- The similarities of the logical sequences between different languages.
What's next for Ready Set Go
- Actively tracking location of users when they are utilizing the application so they can see where they are in their activity.
- Creating a chat room and instant messaging within the application so the event coordinator can message people interested in the event.
- Setting the coins to further make the application more entertaining.
- Encourage young developments to create more inclusive applications and bringing everyone together.