Learning
StickerSmash: The Tutorial That Made App Development Feel Less Abstract
A simple React Native and Expo follow-along that gave me my first proper introduction to VS Code, project structures, npm packages and running an app locally.
I found Expo's StickerSmash tutorial because I had an app idea that I was nowhere near ready to build.
The idea was based around Liverpool FC and the murals around Anfield. I'd started trying to put something together, but very quickly realised there was a large gap between having an idea for an app and understanding how you actually build one.
That sent me looking for something practical to follow, which is how I ended up with StickerSmash.
It turned out to be one of the most useful small tutorials I've done.
Starting with almost no development environment experience
Before StickerSmash, I think I'd opened VS Code once. I had very little understanding of working in a terminal and things like npm packages, dependencies, running code locally and navigating the file structure of a real project were largely abstract concepts to me.
I understood files and folders in the normal sense of using a computer. Seeing how they fitted together inside a software project was different.
StickerSmash gave me a relatively safe way into that world.
The tutorial walks you through building a small React Native app with Expo. You create the project, work through its files, install the packages you need and gradually turn it into an app that can select an image and place stickers onto it.
Expo describes the tutorial as self-paced and says it can take up to two hours to complete. It is split across nine chapters, with the necessary code provided as you progress. In my case, it took considerably longer.
I was constantly pausing the videos, going back, finding the bit I'd missed and catching my own project up before carrying on.
I probably spent seven or eight hours on it, possibly more.
That didn't bother me, I was starting from a very low base. I was getting something useful out of the process - and it's free.
I was following more than understanding
At that stage, there is no point pretending I understood everything I was typing.
I didn't.
A lot of it was following instructions closely enough to get the same result on my own screen. Normally I like to understand why something works, but I don't think that was really the value of StickerSmash.
The value was seeing the whole process.
Create the project. Open it in an editor. Find the relevant files. Add something. Install a dependency. Run the app. Change the code. See the result.
By the end, I still couldn't have sat down and built a React Native app independently, but those things no longer felt completely foreign.
StickerSmash leads you by the hand through one contained project and lets you see what the pieces look like before you necessarily understand all of them.
Why it became useful later
The original Liverpool murals idea eventually went onto the back burner.
The technical challenge wasn't actually the main reason. I realised that doing the idea properly would require a huge amount of content: images, other media assets and genuinely good writing about every player featured. That is a substantial amount of work for what could be quite a limited audience.
I may return to it one day.
What did continue was the familiarity StickerSmash had given me.
When I later started working on Route 26 as part of MyTourneyTime, I was working with AI to build something much more substantial. There was a repository, a proper file structure and eventually deployment infrastructure around it.
I didn't suddenly understand all of that because I'd built StickerSmash.
But it meant I'd seen and follow along built a project, laid out in files. I'd worked inside VS Code. I'd installed dependencies. I'd seen how changing something in one place could affect the application I was running.
That small amount of familiarity made the next step considerably less intimidating.
Who I'd recommend it to
The current Expo tutorial lists a development machine, Node.js, a code editor and Expo Go on a physical device among its setup requirements. It also now states that it assumes familiarity with TypeScript and React.
I certainly didn't approach it with much of that knowledge.
I wouldn't recommend completing StickerSmash and then claiming you know React Native. It isn't that sort of course.
I'd recommend it to someone who is near the beginning and wants a pressure-free follow-along that casts some light on how you build and structure an app.
If VS Code, terminals, npm packages and project folders currently sound like separate technical things you don't really understand, building one small app from beginning to end is useful.
For the amount of time it took, StickerSmash gave me more than I expected from it.
Not because the app itself was particularly important, but because afterwards the environment around building software didn't look quite so mysterious.