ArbitraryCounter

Web and SaaS

counting api

SHOW HN2013

54points
41comments
#473of 1,739 in 2013
Top 28%of 2013 by points

How HN took it

RoastedHalf or more of the comments are critical

2 positive, 6 neutral or asking, 0 mixed, 9 critical, out of 17 comments about the project. Thread score -0.34.

Design: 1 for, 4 againstIdea: 1 for, 3 againstPrivacy: 0 for, 1 againstExecution: 0 for, 1 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Simple, does one thing well

    From 1 comment
    • I love simple api's like this. Its kind of the same mental model I keep around http://jsonip.com. A simple service that does one thing really well. Its been working well and has…
      geuis on HN

Objections

  • GET requests should not modify state; incrementing should use POST

    From 3 comments
    • Incrementing or decrementing a counter is neither side-effect-free nor idempotent, and GET should generally be both, so you really shouldn't use GET for those operations. [1]…
      dragonwriter on HN
    • GET should never modify data. I would recommend changing that to a POST before something indexes it and decides to crawl it every 5 minutes. See here for more reasons:…
      pwf on HN
    • Perhaps POST requests would be more appropriate for incrementing/decrementing? GET's may be either cached(skipped) or duplicated for various reasons, resulting in incorrect counts.
      PeterisP on HN
  • Public URLs let anyone change the counter

    From 2 comments
    • > All URLs are public. We recommend using a unique group name to avoid collisions with other users. So anyone can increment your counter without you knowing? Seems like this…
      egonschiele on HN
    • This would be an example of security through obscurity.
      egonschiele on HN
  • Too trivial to need an external API

    From 3 comments
    • Can someone explain how counters can be so hard to implement ourselves that we need to use this?
      ankurpatel on HN
    • "There's an API for that" is the new "there's an app for that".
      frankcaron on HN
    • Yep. I understand this is just a little toy thing, but people are really trying to start businesses off of "APIs" that do not much more than OP's. The whole point of an API is…
      meowface on HN

Requests

  • Allow increment and decrement by amounts other than one

    From 1 comment
    • I think you should be able to incr/decr by more than 1. Maybe allow http://arbitrarycounter.com/vb/fruit/apples+N where N can be any integer > 0
      Jake232 on HN
  • Add a generate GUID option for group names

    From 1 comment
    • I like the flexibility, but I would suggest you add a "generate GUID" button when choosing the group name in case the user does want a random URL, which seems quite likely.
      benoits on HN

Questions

  • Why is this needed when counters are easy to implement

    From 1 comment
    • Can someone explain how counters can be so hard to implement ourselves that we need to use this?
      ankurpatel on HN

Alternatives named

  • Running a database

    From 1 comment
    • The idea was to make something easier than booting up a database. Personally, I just needed a semi-persistent count that I could discard later. This fit the bill for me, and…
      dustyreagan on HN
  • Google Analytics and Mixpanel

    From 1 comment
    • I believe most anayltics platforms use/support GET, e.g. google analytics, mixpanel etc. If you limit yourself to use only POST, you will limit users from using your tool in…
      tszming on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/6048715)