planet-client-python
planet-client-python copied to clipboard
Proof of Concept & Discussion: synchronous data search wrapper
A common feedback we get is that async is a whole new world and hard to learn, and it can be a barrier to adopting the sdk. What if the sdk could be used in some simple ways without needing to learn async?
This proof of concept is intended to initiate discussion around synchronous wrappers for some commonly-used functions. It implements a synchronous data api search. It gives a little context into how hard it is to accomplish. It doesn't do a great job of exploring edge cases, other than when the generator is not entirely exhausted.
Consider this also a great place for a pro/con discussion on sync wrappers in general. I've identified a few and will add to the list.
Pros:
- lower barrier of entry
- quickly get simple tasks done
Cons
- increased complexity for the codebase
- more than one way to do things
- may slow adoption of async, which is where a lot of performance improvements come in