O
Omniref Blog
omniref.com · Company blog · on HN since 2013
Omniref's blog covers Ruby performance and internals, plus the company's code documentation search site for Ruby gems.
What HN saysHN commenters tried its Ruby docs search and found it useful for symbols and operators, while noting gaps like missing gems and inherited options.
25HN people shared it
11linked it in comments
40stories submitted
2.7Kstory points
10 years agolast shared
2013people per year2026
Most-shared posts
- 1Why blocks make Ruby methods slower3 people · 210 points · first shared 2015 · 48 comments on HN
- 2Show HN: Omniref - a better search site for Ruby documentation3 people · 111 points · first shared 2013 · 57 comments on HN
- 3Matz at RubyConf 2014: Will Ruby 3.0 Be Statically Typed?3 people · 42 points · first shared 2014 · 17 comments on HN
- 4Reduction in Garbage Collection Pause Time in Ruby 2.22 people · 246 points · first shared 2014 · 50 comments on HN
- 5Programmers are hipster librarians2 people · 78 points · first shared 2014 · 43 comments on HN
- 6Why Ruby's attr_accessor is faster than getters and setters2 people · 45 points · first shared 2015 · 8 comments on HN
- 7Tour2 people · first shared 2016
- 8Algorithms Every Programmer Should Know: Reservoir Sampling1 people · 332 points · first shared 2015 · 103 comments on HN
- 9Writing Extensions for Firefox Is Barely Worth the Trouble1 people · 184 points · first shared 2014 · 79 comments on HN
- 10Making Ruby Faster1 people · 179 points · first shared 2014 · 61 comments on HN
- 11C for Rubyists1 people · 178 points · first shared 2014 · 27 comments on HN
- 12Ruby Garbage Collection: Still Not Ready for Production1 people · 169 points · first shared 2014 · 108 comments on HN
- 13Ruby Objects in the deep C underworld1 people · 135 points · first shared 2014 · 14 comments on HN
- 14A Sad Announcement1 people · 133 points · first shared 2016 · 71 comments on HN
- 15Show HN: Better code review for GitHub1 people · 110 points · first shared 2016 · 47 comments on HN
What HN people wrote when they linked it
crashandburn4 · 2013-11-21
Very nice. symbol hound just isn't that great so it's good that at least rubydocs can be searched properly for that spaceship and stuff. aw, can't find the stabby lambda, but at least you've got a nice 404 page :) http://www.omniref.com/?q=-%3E
piotrkaminski · 2016-04-05
The article isn't particularly well written or argued, but it does have a core of truth to it: serious code review in GitHub is painful. However jumping straight to Gerrit to solve that problem seems like overkill to me. Sure, you get a really powerful and extremely configurable code review system, but you have to retrain for a new (and honestly a little long in the tooth) UX and spend time administrating the system.
A lighter-weight SaaS like https://review.ninja, https://omniref.com, or https://reviewable.io (disclosure: this one's mine) might be a more appropriate solution. Specifically to the article's points, Reviewable has a nice reviews dashboard and will show inter-commit diffs within a PR (whether you're rebasing/amending or not), hiding any files with no changes since you last looked. Its default review completion criterion is that all files have been marked as reviewed by at least one person and there are no unresolved discussions still going on, but you can customize this to your team by writing a snippet of code to run against the review's state, e.g. to implement LGTM approval or even a voting system. Reviewable will also update a status check on the PR so you can enforce review completion before merging if that works best for your situation.
Best of all, because both systems integrate tightly with GitHub, there's no need to learn a new workflow or mess around with new git commands. Gerrit still has its place but I don't think it should be the tool of…
timr · 2016-03-15
We've been doing exactly that at Omniref: https://www.omniref.com
derwiki · 2013-11-21
Enumerate options that are obscured by inheritance. For example, to look at:
http://www.omniref.com/?q=cache_action
I don't know what options are valid in `cache_action`. The "real" answer, AFAICT, is to keep walking up the source code until you find the AbstractWhatever that actually defines the options.
JonnieCache · 2013-11-21
http://www.omniref.com/?q=fuzzy_match
doesnt take me to http://rubygems.org/gems/fuzzy_match
atmosx · 2015-06-06
Actually, that's already happening[1]. Also note that there is a library for "ruby contracts[2]" (which I didn't try yet, but I'm very eager to do so) which could give the same result as a statically typed language.
[1] https://www.omniref.com/blog/blog/2014/11/17/matz-at-rubyconf-2014-wil…
[2] http://egonschiele.github.io/contracts.ruby/.
newmana · 2015-03-07
I wish Ruby had better support for functions, passing it to a method incurs a 400% performance penalty:
https://www.omniref.com/ruby/2.2.0/symbols/Proc/yield#annotation=40886…
reledi · 2015-02-06
That was a neat investigation and use of omniref.
I just posted a question: https://www.omniref.com/ruby/gems/activerecord/4.2.0/symbols/ActiveRec…
I see that it popped up under recent questions on the home page. Once a question gets bumped off that list, is there an easy way to find it (e.g. through search) or can one only find it if they happen to be viewing the Q&A tab under the same file?
Since this is my first question there, I'm not sure if I have to check back repeatedly for answers or if I'll get notified somehow.
masklinn · 2014-11-13
Well inlining this way is an optimisation which the compiler may or may not opt to apply, even after adding inlining hints. By manually inlining it they're introducing a little bit of trivial redundancy but I guess they can be certain there will be no indirect call.
Either that, or they never considered the compiler would most likely inline it.
Oddly enough, they do it for string comparisons: https://www.omniref.com/ruby/2.1.4/files/vm_insnhelper.c#line=860
DanielRibeiro · 2013-11-21
Wow, it works with symbols:
http://www.omniref.com/?q=+
http://www.omniref.com/?q=[]
http://www.omniref.com/?q=-
http://www.omniref.com/?q=*
Quick tip: You have this tiny styling issue here: http://i.imgur.com/4uxUuPO.png
trequartista · 2016-03-25
There's a tour - https://www.omniref.com/code_review/tour