Closed sagikazarmark closed 8 years ago
i guess we need to have patience and be very clear in explaining that httplug is not another client, but a client abstraction layer so that libraries do not need to write their own layer, or tie themselves to a specific client implementation.
There are a few arguments which are totally acceptable in my opinion: not being stable, messy documentation, etc.
But people claiming to understand what HTTPlug is are being reluctant about using it and mention arguments which are either not true or reflect that they actually don't get the idea behind.
Wonder if it would be different if it was a PSR.
i am sure it being a PSR would make people get the correct assumption.
Sure it would be different with a PSR but that is far from the only solution. The situation is that every api client uses at least one http client. If it is a well built library (api client) they have adapters for Guzzle5 and 6 etc.
What we need to do is to explain why the current situation is a bad idea. But not in terms on "more code", "hard to maintain", "keep up with changes in guzzle" etc. I think we need to be more clever than that. Let's put on the hat of data scientist and explain that current situation violates the common reuse principle, dependency inversion principle and by doing adapters yourself you risk violating the liskov substitution principle etc etc. I do also believe that we need to show package dependencies in a graph/images.
The message we want to send is: "You focus on your api, we focus on the transportation of data. Trust us, we know our shit."
There are a few arguments which are totally acceptable in my opinion: not being stable, messy documentation, etc.
I believe these are signs for that developers do not trust us.
Nice summarizing @Nyholm
Yes, good summary. In our docs, we should answer the questions:
Documentation has improved a lot over the last couple of days. Please have a look at http://php-http.readthedocs.org/en/latest/ and let me know what we can do to make them even clearer.
I had an idea to create a two-step migration process: php-http/documentation#57
The idea is that you can use HTTPlug API internally without breaking BC at first.
Let's solve this. :smile:
Is it just me or people really don't get the idea behind httplug?
This is just one example:
https://github.com/toin0u/DigitalOceanV2/issues/75#issuecomment-166371056