This was my first fullstack project where I co-developed an iOS App using the Swift programming language. We wanted to make a fun and additive word game that we enjoyed playing and hoped others would too.
A key part of the development process was testing and implementing new ideas, constantly adjusting new parts of the app and scrapping them if they detracted from the user experience. I like to employ the “Fail Fast, Fail Often” mantra when testing new concepts out as it quickly allows me to see the results, leading to a swift feedback loop. In this way, innovation doesn’t suddenly occur – it is the incremental process of making an idea a reality, analogous to evolution.
Increasing playability of the app was a key goal throughout the project. The app featured a dynamic letter-tile generator that had to mirror the English language to give the best playability results. I gave great thought to the design of the app, specifically features such as the navigation buttons that create a satisfying user experience.
After entering a word in the game, new tiles will fall down. Creating this dynamic letter-tile generator shows my innovation first-hand; as to solve this problem I came up with a recursive algorithm that balances the trade-off between playability and speed. Overall, we made the app satisfying to play and the value we provided is clear to see in the enjoyment that our hundreds of users have.
I learnt many problem-solving techniques while fixing the bugs that inevitably arise when designing & implementing an app from scratch. I gained valuable first-hand experience in UI/UX, backend server communication and project management; all while programming an application that needs to work seamlessly on all device sizes.