Anyway … I’ve been working on CodeApprove (https://codeapprove.com) for a while because I think code review is the biggest shortcoming of GitHub.
The idea is to make a code review tool for power users. Just like you have an editor that makes you productive at writing and reading code, you should have a review app that makes you and your team productive at reviewing it.
Or for any Xooglers out there: imagine critique but on GitHub.
Would love feedback on how it’s positioned and if I could improve the value prop!
We use BitBucket at work, so I won't try it out in real-life conditions, but I agree that there seems to be a niche there. The default code review experience is very poor!
I agree that a better tool is needed! I like all the improvements you are selling the tool on, but one of my biggest gripes with code review experiences has been the inability to specify the ordering of the files in the diff. Most people look at the diffs from top to bottom by default, and I sometimes have my questions answered when I move down in a diff. It would be so much better for the author to be able to select an order.
I've wanted exactly this before - would be great to easily tell a story in the code review. Or an easier way to just see each commit in isolation (with a previous/next button).
You could try to use an AI text-to-speech to get a different voice? I wouldn’t judge based on voice (or the lack of it), but I also understand hating the sound of your own voice when recorded. ;)
Maybe even just short gifs/videos that show features in action alongside where you currently have some images?
Looks cool. With it being in "private alpha", if I drop it in a Slack for an open source project with which I am involved, and the maintainer/leader wants to try it, will he be able to sign up?
Good question, and yes! I'll get a text message as soon as they ask to sign up and I'll have them in the alpha by the end of the day. Anyone who is already in the alpha can invite unlimited teammates.
Shameless plug but if you're missing Critique and working on GitHub, try CodeApprove (https://codeapprove.com) which brings as much of the Critique magic to GitHub as possible.
Yes that's a real risk! CodeApprove is not (yet) anyone's full time job so it's also an acceptable risk.
However I think the biggest issue with the landscape for code review tools is that 99% of developers use the default system that ships with their VCS. So on most teams, that's GitHub. People should be actively choosing their code review tools just like they choose their VCS, IDE, CI/CD platform, Issue Trackers, etc. It's one of many tools that makes up your SDLC "Stack".
No need to thank me. I didn't try it yet, but we chatted months ago I another HN post and so once in a while I check it out. Any plans to include gitlab as first class citizen?
I generally think of code review like static typing: many people think they don't need it but pretty much every serious large codebase uses it and needs it.
And just like coding with types: code review does not have to be a chore! With good processes and good tools it can be a superpower and a key element of developer productivity.
Oh wow something must have been in the air! I have been working on a very similar project lately, I think a lot of companies need this and your feature set looks great.
So it's safe to say I think this is a great idea and I wish you success with it! (And when you see the Show HN for "GitGuard" please don't think I ripped you off)
Indeed, merge policy management and enforcement is a pain point for a lot of companies out there, specially for the ones growing up and trying to keep a solid process with new people coming in.
I’m obviously biased but you might like https://codeapprove.com, it’s a GitHub-compatible code review UI for power users.
There are actually a lot of good options in the space these days (Reviewable, Graphite, etc) so there’s no much reason to stick with what GitHub gives you!
Even at Google, most people find Gerrit to be pretty intimidating. It’s mostly only used for Chrome, Go, and Android and it’s far behind Google’s flagship review tool (Critique).
Gerrit is not a bad tool but it is somewhat hard to get used to if you have the more common GitHub-flavored git experience that most software engineers have these days.
I expect if the goal is to get the most vibrant contributor community possible the best thing would be to move to a GitHub-first workflow where Gerrit is supported as a backup. But there’s too much inertia for that to ever happen.
Honestly, I really think Gerrit would be so much better if it weren't for the UI being so... compact? I think it's actually got good information, and a review tool is something many people spend tons of time in, so power-user proficiency is important. But the density is wrong, and I feel it makes it more cluttered than necessary, and that drives people away?
Here's a good example of what I mean, taking a change from ChromiumOS's Gerrit versus a random patch on Phorge (a fork of Phabricator which uses a similar workflow):
The Gerrit one is really busy in my opinion, while the Phorge one gives the page a lot more breathing room, which I think just makes viewing it much easier and less intimidating. Despite that Phorge is still good for power users: it shows all the needed information, has hotkey shortcuts for fast navigation, nice diff viewer, nice side panel with all diffs listed, etc.
I'm trying to set up Gerrit right now and the really compact UI is honestly my main complaint. Maybe someone who's better at UI/UX can give more refined comparison or analysis, but the nice, "bigger" design of Phabricator/Phorge's diff viewer is something I really miss. (I also like the "untabbed" design of Phorge, contra GitHub; all the comments, changes, and code is on one page, instead of having to click back and forth between comments and diffs.)
I was working on the Fuschia project at Google and we used Gerrit as well. It definitely took some getting used to, but once I got the hang of it I found it to be a much better review tool.
It was a lot easier to show how contributions stacked, to continue iterating on a “branch” while waiting for a review from the team, and worked better with trunk-based development workflows.
Gerrit seems to have a lot of extra features in it that make it extra confusing to me. Critique has a lot of features but all of them feel more like intuitive extensions on top of a code review platform (ex: attention set https://abseil.io/resources/swe-book/html/ch19.html). Gerrit seems to have a lot more going on in a much smaller (cramped IMO) UI.
interesting! i find gerrit to be much more enjoyable and find github's PR system inferior.I was also thinking of offering simple gerrit based system for gerrit refugees who left the company and don't want to use github pr for reviewing.
GitHub definitely does support (1)! You just comment and click “add to review” as you go and then submit them all together at the end. It’s been the default for a while now.
For (2) you definitely want Gerrit. For major improvements on (1), (3), and (4) you might like https://codeapprove.com which sits on top of GitHub and attempts to solve your pain points. Obviously I am biased!
Wow this looks great. I really like the additions of presence and the stats about review times. It seems seamlessly integrated.
As you might be able to tell from my username, I’m the founder of CodeApprove (codeapprove.com) which is meant to fix a lot of the same problems you’re going through with Visibly. I’m also passionate about code review and code review tools in general so I’d love to chat sometime, feel free to use the email in my profile.
Anyway … I’ve been working on CodeApprove (https://codeapprove.com) for a while because I think code review is the biggest shortcoming of GitHub.
The idea is to make a code review tool for power users. Just like you have an editor that makes you productive at writing and reading code, you should have a review app that makes you and your team productive at reviewing it.
Or for any Xooglers out there: imagine critique but on GitHub.
Would love feedback on how it’s positioned and if I could improve the value prop!