# pickup
Okay, it looks like the last time I was working on this I finished something that I thought was pretty important.  I am writing this 2023 January, and the last commit was at the end of 2022 November.  I was working on a way to improve the speed of the frontend by making it smarter about what it requested from the backend.  It was asking for every single little detial that the backend had recorded.  This meant that the backend was telling the frontend about hundreds of thousands of things.  This is not a problem in itself, but there are two things that are.  For one, the frontend and backend are communicaing via HTTP, and they are using JSON, and those messages are about as verbose as they can possibly be.  Numeric data is being sent using as much data as possible and for every datapoint headers are being sent since the JSON block was never organized very well.  Second issue is that the frontend started choking rendering the data.  This was the biggest issue.  And it was choking for a reason that was not very good.  It was trying to render points as if the display had a neverending capacity of pixels and that the observer of the output could distinguish points from eachother.  It was a mess.  It was representing single points of data with thousands of nearly identical data, or straight line segments with hundreds of points instead of just two.

The solution to one of the two problems stated above was to only tell the frontend about a reduced set of points.  This new API has a bunch of features but the frontend does not currently take advantage of any of them.  The frontend could tell the backend what it is trying to do, this way the backend can help more.  For example if a wide perspective on all data points is being attempted the backend can help by providing only the data that an observer can easily view, eg: indistinguishable fine details can be ignored.  The backend can show trendlines if an observer is interested in data anylitics.  The backend supports queries that include start and end timestamps.  The frontend does ask for data from the new API, it just does not specify these aditional features.

I want to add a feature to the frontend to make use of the changes to the API from 2022 November.
