Giter Site home page Giter Site logo

Custom slugs for geobins about geobin.io HOT 16 OPEN

aaronpk avatar aaronpk commented on August 20, 2024
Custom slugs for geobins

from geobin.io.

Comments (16)

aranasaurus avatar aranasaurus commented on August 20, 2024

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.

aaronpk avatar aaronpk commented on August 20, 2024

That is also quite possibly a feature.

from geobin.io.

aranasaurus avatar aranasaurus commented on August 20, 2024

Fair enough... we'd definitely need to put some verbiage somewhere that prominently warns people of said "feature" though.

🚶 🎵

from geobin.io.

aaronpk avatar aaronpk commented on August 20, 2024

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.

ungoldman avatar ungoldman commented on August 20, 2024

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.

aaronpk avatar aaronpk commented on August 20, 2024

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.

aranasaurus avatar aranasaurus commented on August 20, 2024

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.

aaronpk avatar aaronpk commented on August 20, 2024

Yeah sounds good. I like the idea that all from the user's perspective, all bins exist all the time.

from geobin.io.

ungoldman avatar ungoldman commented on August 20, 2024

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.

aaronpk avatar aaronpk commented on August 20, 2024

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.

ungoldman avatar ungoldman commented on August 20, 2024

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.

ungoldman avatar ungoldman commented on August 20, 2024

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.

aaronpk avatar aaronpk commented on August 20, 2024

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.

aranasaurus avatar aranasaurus commented on August 20, 2024

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.

ungoldman avatar ungoldman commented on August 20, 2024

@aranasaurus Agree, let's do it this way and iterate further as time allows!

from geobin.io.

ungoldman avatar ungoldman commented on August 20, 2024

ah, we had such big dreams when we were younger

from geobin.io.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.