Too Much for a Single Article

Sometimes the implementation of a feature (or use case) can take a long time to write. This recently happened to me.

For the 'Futile Fishing' application, I want to be able to document the catching of a fish. The basic steps for doing this are as follows:

  1. Record the date and time.
  2. Specify the location - either from a predefined list of locations, or the user's current location.
  3. Specify the type of fish caught, including length and weight.
  4. Allow the user to take an optional photo of the catch.
  5. Record additional comments
  6. Upload the results to the server
  7. Allow the user to browse a collection of recent catches, and review the details of any one of the catches

Like I said, that's a lot of code for a single use case.

I considered doing things in a step-by-step, incremental manner, but it didn't make much sense. (Example: What good is it to capture a photo if you can't upload it to the server?) So instead of doing things piecemeal, I'm going to show what the final experience looks like, and then I'll go back and detail each individual piece from a coding perspective.

By the way, the iOS and Android user interfaces are not exactly the same. If this was an actual production app, I'd make them the same. But since this is really just about learning, I'm fine leaving them as is.