Comments (16)
The issue that @CourtF brought up when we talked about doing this is we don't have any kind of security protecting your bin. So if multiple people wanted to use test
at the same time, they could, and they'd just both be seeing extra data flowing into their bin which might be a bit of surprise.
from geobin.io.
That is also quite possibly a feature.
from geobin.io.
Fair enough... we'd definitely need to put some verbiage somewhere that prominently warns people of said "feature" though.
🚶 🎵
from geobin.io.
Agreed. Probably something like "Anyone with this URL can send and view the data sent to it".
For reference, talky.io says "Others can join you just by going to https://talky.io/test"
from geobin.io.
I think this is a valid request. @CourtF is concerned about possible collisions, e.g. a bunch of people overusing http://geobin.io/test, but if it's wide open then the onus is on the user as long as we make it clear how the site functions. The possibility of collisions is still there with random URLs, just extremely unlikely. I asked @CourtF to limit bin IDs to 10 characters because a full UUID in a URL seems like overkill.
from geobin.io.
Let's go for it. As long as it's clear that there is no access control on bins, it should be fine.
fwiw a 10-character string of [a-zA-Z0-9_] is about equivalent to a 128-bit UUID.
from geobin.io.
The way I implemented this in #115 doesn't add a button, rather just shows the empty bin page (the "No history yet" page with the sample curl). I like it this way better, really, and am considering just changing the text on the no history page a little to accommodate.
Any objections?
from geobin.io.
Yeah sounds good. I like the idea that all from the user's perspective, all bins exist all the time.
from geobin.io.
Me too! From a user perspective it's not the bin expiring, it's the data. In fact that may be useful from the point of view of how we store & retrieve things in redis.
from geobin.io.
Ironically, Redis works the same way. pub/sub channels just "work", they don't need to be created. You can always add things to lists whether or not you've "created" a list. I like the way that ends up feeling.
from geobin.io.
I think we're explicitly setting a bin to expire after 48 hours now. That's reflected in the UI (there's a piece of text indicating when the bin will expire in the bin dropdown and on the front page). If we're rethinking this then we need to rethink the UI as well -- do we indicate that individual pieces of data have an expiration date? or do we keep everything in there and renew the bin's expiration date on each view?
from geobin.io.
If we do the latter or even stick with the current model we still need to explain it to the user -- I'm noticing the whole expiration concept isn't really covered very well on the front page.
from geobin.io.
Renewing the expiration every time data is sent would make more sense than every view. Renewing every view is not a good idea because then bins would basically last forever, like if they start getting crawled by search engines. That said, that also has the potential to create lots of data sticking around. If you can think of a good way to indicate that individual pieces of data disappear after 48 hours that would be awesome.
from geobin.io.
Yeah, the UI is where I stopped in the PR, because I realized it was more than just changing text.
I think we should rework the UI a bit, but not too much. I think the smallest amount of change to the Your History stuff would be to just change the Expiration label to be "Data Expiration" or something similar and have it do the same thing that it is doing now (showing when the latest piece of data in the bin will expire). The other option is to remove the Expiration column (or change it to Last Updated and make it the date of the last data received), and then have each item in the Bin view indicate when it expires, which wouldn't be very difficult on the backend, but would require a bit of thinking on the front end.
As @ngoldman said, either way, we need to add something about data expiration to the front page. We also need to add something there about the visibility/privacy of data as stated in the beginning of this issue's comments thread.
I don't think we should be updating expiration on views, geobin is not a tool for creating anything permanent. The custom binIDs feature may make it seem like we're making something permanent, but in reality we're just making it more flexible and easy to use for its intended purpose: as a debugging tool. These changes make it so that you can put your custom binID in your app just once and not have to worry about updating it every 48 hours.
from geobin.io.
@aranasaurus Agree, let's do it this way and iterate further as time allows!
from geobin.io.
ah, we had such big dreams when we were younger
from geobin.io.
Related Issues (20)
- Improve code coverage for client-side tests
- Add more example code on new geobin page
- Concatenate & minify client assets HOT 1
- visibility toggle resets when toggling between 'list' and 'details' view HOT 1
- change bin expiration to be based on time since last access HOT 3
- Request list looks bad on Safari
- Detect Esri JSON in payload
- Detect street addresses in the payload and geocode them
- Be able to paste some json in somewhere and have geobin.io generate a request to itself. HOT 1
- Example lat/lng or lng/lat? HOT 2
- Render bug in google-chrome-stable on linux HOT 3
- Geobins expiring pre-maturely? HOT 2
- travis build error on `go get -t` HOT 2
- provide bounding box for each bin
- expose yourselves HOT 4
- Roadmap HOT 7
- finish & ship custom bin IDs HOT 3
- WebSocket error (response code: 400)
- 502 bad gateway HOT 2
- convert to public archive HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from geobin.io.