When you work as a web developer, you're always learning.
With all the new tech coming out and becoming standard, I knew it was time that I expanded my skill set in a big way. I decided that it was time to learn React & Node.js. My method of learning has always been focused on the practical, so I decided it was time to build an app that I've been thinking about for a while now.
The app's working title is "Where Does It Hurt?" and focuses on helping people who suffer from chronic pain, such as myself, share what they go through on a daily basis.
So, what's step one when building a web app from start to finish? User research.
Having an idea is great, but you need to know what your users want from it, first and foremost. Without taking users into consideration, you could launch with the best-case-scenario being that you have to rebuild half of it after listening to users complain. Worst case? Nobody even uses it.
With that in mind, I reached out to a support group I'm a member of in order to determine feasibility and get some user feature ideas.
My initial thought was a simple app where you just tap on a body part and give a number from 1-10 to rate the level of pain. Those who suffer from chronic pain are intimately familiar with this pain scale, so we've already got at least one thing right.
What did everybody say, though?
Overall, reaction was positive, which is the most important part. Without a user base, building a web app becomes pointless.
There was one feature request that stuck out, though; a pain log.
Being able to pull up a log of pain levels over a period of time could potentially be useful to the doctors who treat the web apps' users.
When that was suggested, it came to mind that being able to make notes about each update would be useful, as well.
Initially, I thought I would allow you to make notes with each tap, but for brevity and simplicity's sake (knowing my own pain isn't centralized to just one or two spots), I thought I'd have a "publish update" button that allows you to add notes to each update.
An original feature that, while seemingly banal, got some additional positive reaction.
Users can share their pain profile, and non-users and users alike can "kiss" the pain points. The "kiss" term is placeholder, however, in order to limit users receiving trolling or perverse responses to their pain.
Just to reiterate, the original idea was to be able to share what chronic pain sufferers live with. Encouraging user interaction is a part of that.
Now that we have performed a cursory user study, we can start planning out the build.
The next post in building a web app from start to finish on my dev log will be outlining features and user flow. After that, we'll move on to mockups.
When do we get to the actual building of a web app? Not until step 4!
If you've never worked in development before, it is never as simple as writing some code and publishing. You have to do a lot of research and planning when building a web app, in order to ensure you do it right the first time.