Skip to content

Study Journal 10-11-2023

Published: at 12:00 AM

Where I’m at

Portal - Development

Stages of development:

  1. Start with Data / State Management
    1. Data Models - what am I actually trying to capture for later use? E.g. stock item name, count, location, etc
      1. Consider not only what data you are trying to capture - but also maybe how you will create relationships between other models - stock item model that defines a itemId that is then also used in the stocktake model. Also consider metadata requirements - e.g. the dateTimeof the stocktake or the users id.
      2. Think in terms of the object, and also relationships. Metadata is really just a special relationship with the functioning of the application.
      3. To figure these out - you must understand what exactly the purpose of the feature is doing. What is the stocktake feature in exact and precise terms doing?
        1. Streamlining the stocktake count process by giving a more user friendly interface (e.g. only showing user relevant data)
        2. Helping the user with more context specific information to help guide the users (e.g. showing the last count numbers on a new stocktake being initialised)
        3. Getting more quality data inputs to guide business decisions (e.g. ensuring quality through only presenting appropriate UI elements and or validation logic)
    2. State Classes -

Stocktake Locking Function:

Combo of StateNotifier / StreamListener - basically the way it’d work is like this:

This way a person doing the stocktake can be visually prompted if they do not attend to the stocktake feature promptly, and the app can unlock the session for a new user if the user does not respond. Then another user could then complete the remaining stocktake that was left unattended to by the initial user.

There’d be a Stream listener to Firestore to continually check for status updates. That Stream would be essential to providing a set of traffic light indicators. Where there could a subtle green / yellow / red / black indicator to indicate to the user that it’s available / in use / unavailable to initialise a new stocktake.

What I learnt

From “Pragmatic Thinking and Learning”

Finished Chapter 2: Journey from Novice to Expert. Here’s my take on the most salient points (not all I’ve repeated myself before):

Consider supporting this blog