Build stupid s**t that nobody needs | A Swipe hackathon experience

March 10, 2022

Build stupid s**t that nobody needs | A Swipe hackathon experience

Innovation is our business; our passion is innovation. Experimenting with new technology is crucial to surviving in this ever-changing landscape. As Ron Burgundy so eloquently put it: “If you're not first, you're last.”

A hackathon is an excellent addition to company culture. It's the ultimate teambuilding exercise, promoting innovation, teamwork, creativity, a true sense of camaraderie and, of course, healthy competitiveness. Oh, and it's loads of fun as well! All of these points speak to the core values at Swipe.

Last week, the Swipe team gathered together for a two-day hackathon. We were broken up into three groups of eight to 10 people and each team took on a different project. Each team could work with colleagues across different departments they usually don't get to work with on a day-to-day basis.

The theme for this hackathon was to build stupid s**t that nobody would need. This might sound corny, but our brains are fixed on finding usable, useful things to make. So it was a real challenge coming up with suitable projects that were still challenging and innovative to build but had no real business value.

What we learned

One interpretation of Murphy's Law states that anything that can happen will happen. You need to think on your feet and pivot your idea quickly if something is not working as expected.

Teamwork is crucial, and building a complete project in eight hours is HARD! In such a short amount of time, every team member needs to step up to the plate and you need to trust that the person can deliver.

We did not allow the teams sufficient time to prepare in advance. We'll allow for a preparation slot a couple of days before the hackathon starts for the next event. The biggest challenge faced was to allow all the engineers to begin developing before any designs or wireframes were available. 

Why Swipe embraces hackathons

Emerging technology is a driving force behind business innovation. At Swipe, we pride ourselves on staying up to date on emerging tech to advise our clients and unlock the potential of their industry and business. 

The primary purpose of this hackathon was to allow the entire Swipe team to research, plan and build a next-gen solution using a combination of emerging cloud services. It’s not every day that you get to play with these technologies, and these events are geared towards exposing all our staff to the latest and greatest tech.

In a post hackathon survey, only one person indicated that they did not learn anything new! This stat alone makes this entire exercise worth our while. As long as our company continues to learn new technologies, we’ll stay at the forefront of innovation.

When asked what was most helpful about the hackathon, team building, working with colleagues that you rarely work with, and being exposed to new technology dominated the feedback. 

The Swipe hackathon experience

Hackathons are usually thought of as an engineering exercise, but this is far from true. We try and involve the whole company, and each project's deliverables include the following:

  1. High-level planning document
  2. Statement of work
  3. UX wire flows and wireframes
  4. Designs
  5. Trello board with ticket breakdown
  6. A working proof of concept
  7. Presentation
  8. Blog post

The skillset required to deliver on each aspect includes researchers, developers, UX and UI designers, project managers and content producers. It's a great way to involve everyone. You can even use your finance department to do financial models or the legal department for valuable advice for the projects. There is no limitation to who you can include in a hackathon.

The projects we selected combined all the elements needed for a successful Swipe hackathon project. They included some emerging and innovative technology, needed a wide array of skills, were achievable to complete over two days and matched the hackathon's theme: building stupid s**t that nobody would need. 

Project 1: Swipe's NFT mascot, "The Bok"

Some might call it a worthless, glorified PNG. Others have become millionaires from this new wave of crypto-based commodity sales, but what are NFTs? An extensive definition is "a non-fungible token that is a non-interchangeable unit of data stored on a blockchain, a form of digital ledger, that can be sold and traded. Types of NFT data units may be associated with digital files such as photos, videos, and audio."

NFTs have taken the world by storm, both because they are new and because NFTs being sold are quite artistic, quirky or plain silly. Users auction and trade these one-of-a-kind commodities, and some have gone for hefty prices. Just ask XCopy, who created a piece called "A Coin for the Ferryman" that sold for a sobering amount of $6.034 million.

With this in mind, and to explore this new technology and phenomenon, Swipe's Project Team #1 decided to create their own collection of NFTs called "The Bok". This contains six main NFTs with three variations for each of them. The Bok has many different faces, personalities and origins. Bok4Cyber and Bok4Simpsons are two of the leading stars in the collection and are vastly different, one being cyberpunk inspired, whereas the other brings a very familiar colour palette into the mix.

Swipe's Project Team #1 working on their collection of NFTs called "The Bok" at Swipe iX HQ.

Project 2: Scissor Me

Suppose you've ever needed help making a small decision like who gets the last slice of pizza or who gets to ride shotgun. In that case, you're probably more than familiar with the game of rock, paper, scissors. This well-loved game originated in China, and it wasn’t until the 1700s that it made its way over to Japan.

The initial idea was to build a multiplayer game and then use object recognition to identify a hand gesture. Alternatively, voice commands were also considered. In the end, the team decided to use augmented reality instead, where each player holds a device and points it to the virtual board to choose between the three 3D options of either rock, paper or scissors. Each player has a customised avatar, and you can randomly play against another Swipe avatar.

The plan was to use Unity & Firebase to write a very basic app that could be submitted to the iOS & Google Play stores. All the logic for rock, paper, scissors would have been contained in the app. Once a match was completed, the results would be submitted to the RestFul API, saving the results to AWS’s QLDB. QLDB uses blockchain technology to write immutable data to a ledger, securing the integrity of the scoreboard.

At the start of the hackathon, the team had big ambitions but ran into multiple problems and had to descope the project to deliver a usable product. It was amazing to see how the team rallied together in the face of these challenges.

Swipe's Project Team #2 working on the Scissor Me application.

Project 3: Duplica

The idea was to build an app that utilises AWS facial recognition technology (Amazon Rekognition) to match you to your celebrity doppelganger. The app concept was simple: a user uploads an image of themselves, which is then run against a database of 202 602 celebrities to find the highest scoring matches. Doppelgangers are defined as lookalikes but not exactly identical. 

The Backed developers opted to experiment and use Laravel Vapor. Laravel Vapor is a serverless deployment platform for Laravel that automatically sets up the project on AWS Lambda. AWS Lambda is a serverless compute service that runs your code in response to events and automatically manages the underlying compute resources for you.

Once uploaded, the photo is resized on the client-side and sent to an S3 bucket. With the AWS PHP SDK, we then match the image with a set of over 200 000 celebrity images sourced from CelebA-Dialog Dataset and see the closest matches.

On the next step, using AWS celebrity recognition API to get the Wikidata ID, we get more information about the celebrity, including why they are famous or what they are famous for. A short snippet is displayed to the end-user on the results page with a hyperlink to the Wikipedia or IMDb page. 

The front-end developers used React and Typescript to render the pages and display the app, based on the designs, to the end-user while the code is hosted in Vercel. The Material UI (MUI) library is a component library used to style the frontend according to the design and SCSS for MUI's custom styling needs. 

Swipe's Project Team #3 working on the Duplica application.

Choosing the Winning Team

At the end of the hackathon, each team needed to present their project to the Swipe management team. The purpose of the presentation was to showcase the entire project lifecycle and needed to include the documentation, planning, UX and design right through to the actual POC and a blog post for the project.

Each project was then judged on a weighted set of criteria out of 100 points, including points of use of technology, documentation, UX and design, presentation, blog post and execution. It was a tight race, but in the end, Duplica walked away with the spoils by scoring 71 out of 100 points. Swipe's NFT mascot, "The Bok", came in second place with 59 points, followed by Scissor Me, with 57 points.

Team Duplica!

Go ahead, find your match: https://duplica.vercel.app

Until next time, Swipe Swipe!

Deon Heunis

Co-founder and CTO

Swipe iX Newsletter

Subscribe to our email newsletter for useful tips and valuable resources, sent out monthly.