5 ms·
You can annotate code with the new Genius beta! For example: http://genius.com/5077469/gist.github.com/RogerPodacter/3e8adbfa9cfd06d239a2 http://genius.com/507
by tomlemon 12y ago
You can annotate code with the new Genius beta!
For example: http://genius.com/5077469/gist.github.com/RogerPodacter/3e8adbfa9cfd06d239a2 http://genius.com/5077469/gist.github.com/RogerPodacter/3e8a...
And actually you can put "genius.com/" in front of ANY url to annotate that page. For example: http://genius.com/5077492/www.paulgraham.com/yahoo.html http://genius.com/5077492/www.paulgraham.com/yahoo.html
There's also a chrome extension: https://chrome.google.com/webstore/detail/genius-beta/ccaokncpmmjiakalbcfdbfmpcaiddjdn?hl=en-US https://chrome.google.com/webstore/detail/genius-beta/ccaokn...
You can sign up for the beta at http://genius.com/beta http://genius.com/beta.
(Questions / feedback welcome – tom@genius.com)
- fizwhiz 12y agoHot damn that's badass. Just signed up for the beta. It's a shame that I work for a big corp with code behind the company firewall so prefixing a code repo link like httpS://github.bigcorp.com/code-repo/funstuff.py with "genius.com/" resolves to a 404. Regardless, this looks really exciting. I'm going to annotate a bunch of stuff just for funsies.
- asadlionpk 12y agoBut that code is just a html page you are annotating. What happens on a new commit. The annotations should persist somehow across code changes. That would require specialised solution for code annotation I suppose.
- tomlemon 12y agoWell take this for example: http://genius.com/5079163/github.com/rails/rails/blob/master/activemodel/lib/active_model.rb http://genius.com/5079163/github.com/rails/rails/blob/master... This annotation will always be on the version of active_model.rb at master, even if it changes. And we try pretty hard to anchor annotations even when the underlying text changes. Here's a talk I did explaining our approach to "fuzzy annotation anchoring" if you're super interested: https://www.youtube.com/watch?v=FJyqfRcyYIQ https://www.youtube.com/watch?v=FJyqfRcyYIQ But it's definitely not perfect! Hit me up with suggestions: tom@genius.com
- blt 12y agoIt would have to be a state-of-the-art code diff tool. I've never used a diff tool that can accurately track a line of code through big refactoring changes. They are really only good for small incremental localized changes. I think that says more about the weakness of mainstream diff tools than it says about the problem. I don't really know how difficult it is, but I'm guessing just a slight amount of semantic understanding would get you way beyond the quality of current diff tools. Kind of sad that nobody is doing it. I use Perforce every day on a really large, old code base, and it's depressing how awful the differ and "blame" tool are. Especially because those tools's usefulness seems to increase in proportion to the size and age of the code base. I guess programmers are masochists; we really haven't put that much effort into our own tools...
- feedjoelpie 12y agoMy bit of feedback would be that having the annotation dialog cover any part of the code at all is going to create a lot of frustration. Omniref's side-by-side approach is much easier to read.