Discussion and notes: user interface and feature ideas
We need to sort these. Many of these bullet points could become issues, but I am mainly using this is a heap where I can dump the information.
Some of our ideas. Some have issues associated with them already.
- Move the sampling stuff to the front screen
- Brighter buttons, more muted backgrounds (including gray rather than bright colors)
- Bigger buttons
- Less on any one screen? So split DB actions into multiple screens, for example
- Linear user flow: database -> platform -> sample (or platform -> sample -> DB)
- Rotation #33 (closed)
setContentView(R.layout.activity_database_actions); View someView = findViewById(R.id.databaseStatus); // Find the root view View root = someView.getRootView(); // Set the color root.setBackground(getDrawable(R.drawable.background_dark));
- Get a toolbar that can take you to the things you rarely need:
- Sensors are the big-ticket items, they get most of the real estate under that
- Database setup and lab notebook are beneath them
- automated unit tests?
- revise data model/re-architect # some notes: two columns: headstream, varchar(5) - sampleunitid, integer (taking the place of spot or stream id)
- take picture of spot, where a spot’s image includes the 3 flags where we’re digging - picture may also include surrounding area, want to correlate images to the data from microbial sampling
- bad idea to have CREATE statements in code a la ReadingsDatabase?
- Fieldday_Streaming_GIS table, with geopoint, is not used
- Postgres fieldday_streaming_gis table
- We should add the geopoint to the fieldday_streaming table
- compute geopoint based on lat and long columns
- document our testing
- Test elevation streaming
- Leave, walk downstairs, go to the rock, come back
- Or, leave, go to the first crack in the sidewalk at the 4-way stop at public safety where there will be the top of a 2x2 with a nail
- Test elevation streaming
- quality control
- no sector is displayed but the device will still stream when the button is pressed
- maybe a display problem not a data problem? streaming data appears to be collected
- also the stream button doesn’t blink
- but we get a weird runaway streaming problem where I can’t seem to stop the streaming after a rotation
- Field Day crashes on erasing local database if you have already done so
- Can’t select a sector with the default site, have to change it to get the sector dropdown active
- Number of values each sensor returns
- some return 1,2,3, etc. values
- we don’t do a good job of detecting the number of values in-place
- UX questions
- What do people do? Is there an order?
- Display aggregates - what kinds? count of reads/streams? mean/median/mode/range? lat/long/times start/stop? can there be a map?
- Global settings, or settings changed rarely (e.g. databases)?
- What devices? Is this mainly a tablet app, phone app, or both? (I think both)
- Documentation: "As previously mentioned, the map() function uses integer math. So fractions might get suppressed due to this. For example, fractions like 3/2, 4/3, 5/4 will all be returned as 1 from the map() function, despite their different actual values. So if your project requires precise calculations (e.g. voltage accurate to 3 decimal places), please consider avoiding map() and implementing the calculations manually in your code yourself."
- Storage Access Framework