Hacker News new | past | comments | ask | show | jobs | submit login

      spec-builder git:(master)  ruby -e "require 'benchmark'; puts Benchmark.measure { 5_000.times { rand(36**19).to_s(36) } }"
    0.005459   0.000009   0.005468 (  0.005464)
I am at 5ms on a MacBook. Can you share your iex code?

Here's a couple of versions of the code: https://gist.github.com/nickjj/99ea84f460f41dae4139d0610ce80...

It would be interesting if you wanted to come up with a Ruby version that adheres to the random code spec which should be able to be determined from looking at the first 2 versions. It's basically only a subset of characters that can be used and the code should be output as XXXX-XXXX-XXXX-XXXX.

I personally use the 25ms version because I find it to be the best one if you factor in both speed and readability. I'm sure there's better ways but I'm only an Elixir beginner.

Also for the record I didn't write the 2nd or 3rd versions of that gist. I asked around in the community and that's what others have put together.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact