Inspiration

Soccer is the most popular sport that attracts mass attention from billions of followers across the globe. But beyond the professional soccer world, there's another world of soccer: where all these passionate soccer fans turn to stars themselves. It's a less conventional game, played in less conventional places, by people who are not conventional soccer professionals- except at heart! Welcome to the world of pick-up soccer, or idiski (South African term) or as more commonly known in Brazil, pelada! The games often do not have set teams, hence there is a need to select teams each time player meet up for a game. From my fourteen years of experience in this game I realized that it is quite difficult to select teams. It takes time and the process is often randomized, so I wanted to build an app that will make picking teams very easy and at the same time keep the teams well balanced so that players can enjoy a competitive game that allows them to grow their soccer skills.

What it does

It sorts players into different teams based on player ratings and positions. A user is allowed to swap players across teams by selecting any two players and tapping the swap button. A user can also use the built in timer, coin flip and scoreboard to manage a pick-up soccer game.

How I built it

I built code it on Xcode using the swift programing language. I had to design an algorithm that will sort players efficiently into optimal teams.

Challenges I ran into

Sorting players by player ratings was quite simple to achieve but when I considered balancing ratings and player positions unexpected complexities arose as such I had to thoroughly test my program and iterate it to take care of many different player combinations.

Accomplishments that I'm proud of

Having a bug-free (to my knowledge) algorithm for efficiently, and fairly, creating teams. I am also proud of how my coin flip, and general UI feels.

What I learned

How to create transitions with a flip-effect, changing the image of an image button... I think for almost everything I was playing at the edges of darkness, each line of code I wrote led to a new discovery and a new light.

What's next for Pelada

Enabling users to customize team names and game modes, organize games and pick teams on the app and also connect with other players. All players should be able to save their profiles on their Pelada accounts and other users should be able to view these profiles and rate the players, invite them to games etc.

Built With

Share this project:

Updates